Home

Linha Microsiga Protheus

Páginas filhas
  • MATA110 - Solicitação de Compras

Função: MATA110 - Solicitação de Compras
Versões: Microsiga Protheus 8.11 , Protheus 10
Compatível Países: Todos
Sistemas Operacionais: Todos
Compatível às Bases de Dados: Todos
Nível de Acesso: Nível 1 (Acesso Clientes)
Idiomas: Espanhol , Inglês
Descrição:

OBJETIVO:
Essa rotina permite o registro de qualquer Solicitação de Compras de mercadorias na empresa. A entrada das solicitações inicia o processo de compras.

Programa Fonte:
MATA110.PRW
Sintaxe:

MATA110 - Solicitação de Compras ( [ PARAMIXB1 ] [ PARAMIXB2 ] [ PARAMIXB3 ] [ PARAMIXB4 ] [ PARAMIXB5 ] )

Retorno:
    ()
Observações

Esta rotina pode ser utilizada via Rotina Automática.

Exemplos
User Function MyMata110()Local aCabec := {}Local aItens := {}Local aLinha := {}Local nX     := 0Local nY     := 0Local cDoc   := ""Local lOk    := .T.         Private lMsHelpAuto := .T.PRIVATE lMsErroAuto := .F.//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿//| Abertura do ambiente                                         |//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙConOut(Repl("-",80))ConOut(PadC(OemToAnsi("Teste de Inclusao de 2 solicitacoes de compra com 2 itens cada"),80))PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01" MODULO "COM" TABLES "SC1","SB1"//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿//| Verificacao do ambiente para teste                           |//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙDbSelectArea("SB1")DbSetOrder(1)If !SB1->(MsSeek(xFilial("SB1")+"01"))	lOk := .F.	ConOut(OemToAnsi("Cadastrar produto: 01"))EndIfIf !SB1->(MsSeek(xFilial("SB1")+"02"))	lOk := .F.	ConOut(OemToAnsi("Cadastrar produto: 02"))EndIfIf lOk	ConOut(OemToAnsi("Inicio: ")+Time())		For nY := 1 To 2		aCabec := {}		aItens := {}		//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿		//| Verifica numero da SC       |		//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ		cDoc := GetSXENum("SC1","C1_NUM")		SC1->(dbSetOrder(1))		While SC1->(dbSeek(xFilial("SC1")+cDoc))			ConfirmSX8()			cDoc := GetSXENum("SC1","C1_NUM")		EndDo					aadd(aCabec,{"C1_NUM"    ,cDoc})		aadd(aCabec,{"C1_SOLICIT","Administrador"})		aadd(aCabec,{"C1_EMISSAO",dDataBase})		For nX := 1 To 2			aLinha := {}			aadd(aLinha,{"C1_ITEM"   ,StrZero(nx,len(SC1->C1_ITEM)),Nil})			aadd(aLinha,{"C1_PRODUTO","01",Nil})			aadd(aLinha,{"C1_QUANT"  ,1   ,Nil})			aadd(aItens,aLinha)		Next nX		//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿		//| Teste de Inclusao                                            |		//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ		MSExecAuto({|x,y| mata110(x,y)},aCabec,aItens)		If !lMsErroAuto			ConOut(OemToAnsi("Incluido com sucesso! ")+cDoc)		Else			ConOut(OemToAnsi("Erro na inclusao!"))		EndIf	Next nY	ConOut(OemToAnsi("Fim  : ")+Time())EndIfRESET ENVIRONMENTReturn(.T.)
Parâmetros:
Nome Tipo Descrição Default Obrigatório Referência
PARAMIXB1 Vetor Array contendo o cabeçalho da Solicitação de Compra.
PARAMIXB2 Vetor Array contendo os itens da Solicitação de Compra.
PARAMIXB3 Numérico Opção desejada: 3-Inclusão; 4-Alteração ; 5-Exclusão ; 7-Aprovação (Somente versão Protheus 10) 3
PARAMIXB4 Lógico Controle Interno - Informa se a rotina é chamada via MRP. .F.
PARAMIXB5 Lógico Indica se apresenta ou não a Dialog da Rotina Automática. .F.