Árvore de páginas

Descrição:

A rotina automática TECA400 permite efetuar a manutenção de Orçamentos.

Sintaxe:

TECA400 - Rotina Automática de Orçamento (cRotina,xAutoCab, xAutoItens, xAutoApont, nOpc)

Exemplos:

User Function MyTeca400()
Local lOk := .T.
Local aCabec := {}
Local aItem := {}
Local aItens := {}
Local aApont := {}
Local aAponts := {}
Local cNumOrc := ""
PRIVATE lMsErroAuto := .F.
// Abertura do ambiente
ConOut(Repl("-",80))
// Verificacao do ambiente para teste
dbSelectArea("SA1")
dbSetOrder(1)
If !SA1->(DbSeek(xFilial("SA1")+"00000101"))
lOk := .F.
ConOut("Cadastrar Cliente: 000001 Loja: 01")
EndIf
dbSelectArea("SB1")
dbSetOrder(1)
If !SB1->(DbSeek(xFilial("SB1")+"000001"))
lOk := .F.
ConOut("Cadastrar Produto: 000001")
EndIf
dbSelectArea("SB1")
dbSetOrder(1)
If !SB1->(DbSeek(xFilial("SB1")+"000002"))
lOk := .F.
ConOut("Cadastrar Produto: 000002")
EndIf
dbSelectArea("SE4")
dbSetOrder(1)
If !SE4->(DbSeek(xFilial("SE4")+"001"))
lOk := .F.
ConOut("Cadastrar Condicao de Pagamento: 001")
EndIf
dbSelectArea("SE4")
dbSetOrder(1)
If !SE4->(DbSeek(xFilial("SE4")+"002"))
lOk := .F.
ConOut("Cadastrar Condicao de Pagamento: 002")
EndIf
dbSelectArea("AA3")
dbSetOrder(1)
If !AA3->(DbSeek(xFilial("AA3")"00000101"+PadR("000001",15)"123456"))
lOk := .F.
ConOut("Cadastrar Base Instalada Cliente/Loja: 000001/01 Produto: 000001 Série: 123456")
EndIf
dbSelectArea("AA3")
dbSetOrder(1)
If !AA3->(DbSeek(xFilial("AA3")"00000101"+PadR("000002",15)"654321"))
lOk := .F.
ConOut("Cadastrar Base Instalada Cliente/Loja: 000001/01 Produto: 000002 Série: 654321")
EndIf
dbSelectArea("AAG")
dbSetOrder(1)
If !AAG->(DbSeek(xFilial("AAG")+"000001"))
lOk := .F.
ConOut("Cadastrar Ocorrencia: 000001")
EndIf
dbSelectArea("AA5")
dbSetOrder(1)
If !AA5->(DbSeek(xFilial("AA5")+"000001"))
lOk := .F.
ConOut("Cadastrar Servico: 000001")
EndIf
If lOk
ConOut(PadC("Teste de Inclusao da Orcamento",80))
ConOut("Inicio: "+Time())
cNumOrc := GetSXENum("AB3","AB3_NUMORC")
RollBackSx8()
aadd(aCabec,{"AB3_NUMORC",cNumOrc,Nil})
aadd(aCabec,{"AB3_CODCLI",SA1->A1_COD,Nil})
aadd(aCabec,{"AB3_LOJA" ,SA1->A1_LOJA,Nil})
aadd(aCabec,{"AB3_EMISSA",dDataBase,Nil})
aadd(aCabec,{"AB3_ATEND" ,cUserName,Nil})
aadd(aCabec,{"AB3_CONPAG","001",Nil})
aadd(aCabec,{"AB3_HORA" ,Time(),Nil})
aadd(aItem,{"AB4_ITEM" ,StrZero(1,2),Nil})
aadd(aItem,{"AB4_TIPO" ,"1",Nil})
aadd(aItem,{"AB4_CODPRO",AA3->AA3_CODPRO,Nil})
aadd(aItem,{"AB4_NUMSER",AA3->AA3_NUMSER,Nil})
aadd(aItem,{"AB4_CODPRB",AAG->AAG_CODPRB,Nil})
aadd(aItens,aItem)
aadd(aApont,{"AB5_ITEM" ,StrZero(1,2),Nil})
aadd(aApont,{"AB5_SUBITE",StrZero(1,2),Nil})
aadd(aApont,{"AB5_CODPRO",SB1->B1_COD,Nil})
aadd(aApont,{"AB5_CODSER",AA5->AA5_CODSER,Nil})
aadd(aApont,{"AB5_QUANT",1,Nil})
aadd(aApont,{"AB5_VUNIT",100,Nil})
aadd(aApont,{"AB5_PRCLIS",100,Nil})
aadd(aAponts,aApont)
TECA400(,aCabec,aItens,aAponts,3)
If !lMsErroAuto
ConOut("Inclusao com sucesso! ")
Else
ConOut("Erro na inclusao!")
EndIf
EndIf
Return

Idioma:

Português(Brasil)

Versões:

Microsiga_Protheus10_e_Microsiga_Protheus11

Sistemas Operacionais Suportados:

Todos

Compatível com as Bases de Dados:

Todas

Parâmetros:

cRotina => Caracter
xAutoCab => Array of Records (AB3)
xAutoItens => Array of Records (AB4)
xAutoApont => Array of Records (AB5)
nOpc => Numérico

Programa Fonte:

TECA400

  • Sem rótulos