import.css=/download/attachments/327912/newLayout.css

Função: MATA410 - Geração automática de Pedido de Vendas (ExecAuto)
Abrangências: Microsiga Protheus 11 , Protheus 10
Versões: 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: Português (Brasil)
Descrição:
Função utilizada para geração de pedido de vendas via rotina automática (ExecAuto).
Programa Fonte:
MATA410.PRX
Sintaxe:

MATA410 - Geração automática de Pedido de Vendas (ExecAuto) ( [ aCabec ] [ aItens ] [ nOpc ] )

Retorno:
    ()
Exemplos
#INCLUDE "PROTHEUS.CH"#INCLUDE "TBICONN.CH"/*/±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±ÚÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄ¿±±±±³Fun‡„o    ³MyMata410 ³ Autor ³ Eduardo Riera         ³ Data ³17.04.2003 ³±±±±ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄ´±±±±³          ³Rotina de teste da rotina automatica do programa MATA410     ³±±±±³          ³                                                             ³±±±±ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´±±±±³Parametros³Nenhum                                                       ³±±±±³          ³                                                             ³±±±±ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´±±±±³Retorno   ³Nenhum                                                       ³±±±±³          ³                                                             ³±±±±ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´±±±±³Descri‡„o ³Esta rotina tem como objetivo efetuar testes na rotina de    ³±±±±³          ³pedido de venda                                              ³±±±±³          ³                                                             ³±±±±ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´±±±±³Uso       ³ Materiais                                                   ³±±±±ÀÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß/*/Function MyMata410()Local aCabec := {}Local aItens := {}Local aLinha := {}Local nX     := 0Local nY     := 0Local cDoc   := ""Local lOk    := .T.PRIVATE lMsErroAuto := .F.//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿//| Abertura do ambiente                                         |//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙConOut(Repl("-",80))ConOut(PadC("Teste de Inclusao de 10 pedidos de venda  com 30 itens cada",80))PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01" MODULO "FAT" TABLES "SC5","SC6","SA1","SA2","SB1","SB2","SF4"//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿//| Verificacao do ambiente para teste                           |//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙdbSelectArea("SB1")dbSetOrder(1)If !SB1->(MsSeek(xFilial("SB1")+"PA001"))	lOk := .F.	ConOut("Cadastrar produto: PA001")EndIfdbSelectArea("SF4")dbSetOrder(1)If !SF4->(MsSeek(xFilial("SF4")+"501"))	lOk := .F.	ConOut("Cadastrar TES: 501")EndIfdbSelectArea("SE4")dbSetOrder(1)If !SE4->(MsSeek(xFilial("SE4")+"001"))	lOk := .F.	ConOut("Cadastrar condicao de pagamento: 001")EndIfIf !SB1->(MsSeek(xFilial("SB1")+"PA002"))	lOk := .F.	ConOut("Cadastrar produto: PA002")EndIfdbSelectArea("SA1")dbSetOrder(1)If !SA1->(MsSeek(xFilial("SA1")+"CL000101"))	lOk := .F.	ConOut("Cadastrar cliente: CL000101")EndIfIf lOk	ConOut("Inicio: "+Time())	For nY := 1 To 10		cDoc := GetSxeNum("SC5","C5_NUM")		RollBAckSx8()		aCabec := {}		aItens := {}		aadd(aCabec,{"C5_NUM"   ,cDoc,Nil})		aadd(aCabec,{"C5_TIPO" ,"N",Nil})		aadd(aCabec,{"C5_CLIENTE",SA1->A1_COD,Nil})		aadd(aCabec,{"C5_LOJACLI",SA1->A1_LOJA,Nil})		aadd(aCabec,{"C5_LOJAENT",SA1->A1_LOJA,Nil})		aadd(aCabec,{"C5_CONDPAG",SE4->E4_CODIGO,Nil})		If cPaisLoc == "PTG"			aadd(aCabec,{"C5_DECLEXP","TESTE",Nil})		Endif		For nX := 1 To 30			aLinha := {}			aadd(aLinha,{"C6_ITEM",StrZero(nX,2),Nil})			aadd(aLinha,{"C6_PRODUTO",SB1->B1_COD,Nil})			aadd(aLinha,{"C6_QTDVEN",1,Nil})			aadd(aLinha,{"C6_PRCVEN",100,Nil})			aadd(aLinha,{"C6_PRUNIT",100,Nil})			aadd(aLinha,{"C6_VALOR",100,Nil})			aadd(aLinha,{"C6_TES","501",Nil})			aadd(aItens,aLinha)		Next nX		//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿		//| Teste de Inclusao                                            |		//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ		MATA410(aCabec,aItens,3)		If !lMsErroAuto			ConOut("Incluido com sucesso! "+cDoc)		Else			ConOut("Erro na inclusao!")		EndIf	Next nY	ConOut("Fim  : "+Time())	//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿	//| Teste de alteracao                                           |	//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ	aCabec := {}	aItens := {}	aadd(aCabec,{"C5_NUM",cDoc,Nil})	aadd(aCabec,{"C5_TIPO","N",Nil})	aadd(aCabec,{"C5_CLIENTE",SA1->A1_COD,Nil})	aadd(aCabec,{"C5_LOJACLI",SA1->A1_LOJA,Nil})	aadd(aCabec,{"C5_LOJAENT",SA1->A1_LOJA,Nil})	aadd(aCabec,{"C5_CONDPAG",SE4->E4_CODIGO,Nil})	If cPaisLoc == "PTG"		aadd(aCabec,{"C5_DECLEXP","TESTE",Nil})	Endif	For nX := 1 To 30		aLinha := {}		aadd(aLinha,{"LINPOS","C6_ITEM",StrZero(nX,2)})		aadd(aLinha,{"AUTDELETA","N",Nil})		aadd(aLinha,{"C6_PRODUTO",SB1->B1_COD,Nil})		aadd(aLinha,{"C6_QTDVEN",2,Nil})		aadd(aLinha,{"C6_PRCVEN",100,Nil})		aadd(aLinha,{"C6_PRUNIT",100,Nil})		aadd(aLinha,{"C6_VALOR",200,Nil})		aadd(aLinha,{"C6_TES","501",Nil})		aadd(aItens,aLinha)	Next nX		ConOut(PadC("Teste de alteracao",80))	ConOut("Inicio: "+Time())	MATA410(aCabec,aItens,4)	ConOut("Fim  : "+Time())	ConOut(Repl("-",80))		//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿	//| Teste de Exclusao                                            |	//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ	ConOut(PadC("Teste de exclusao",80))	ConOut("Inicio: "+Time())	MATA410(aCabec,aItens,5)	If !lMsErroAuto		ConOut("Exclusao com sucesso! "+cDoc)	Else		ConOut("Erro na exclusao!")	EndIf	ConOut("Fim  : "+Time())	ConOut(Repl("-",80))EndIfRESET ENVIRONMENTReturn(.T.)
Parâmetros:
NomeTipoDescriçãoDefaultObrigatórioReferência
aCabecArray of RecordArray contendo os campos do cabeçalho (SC5).
aItensArray of RecordArray contendo os campos dos itens (SC6).
nOpcArray of Record3- Inclusão
4- Alteração
5- Exclusão