Base de conhecimento
Encontre respostas para suas dúvidas em quatro fontes de conhecimento diferentes ao mesmo tempo, simplificando o processo de pesquisa.

Prestadores de Serviços - SIGATEC - Execauto Ordem de Serviço (TECA450)

time.png Tempo aproximado para leitura: 00:02:00 min

Dúvida
Exemplo do Execauto Ordem de Serviço - TECA450

Ambiente
Prestadores de Serviços - SIGATEC - Todas as versões;

Solução
Exemplo Execauto Ordem de Serviço - TECA450 

#include'TOTVS.CH'
#include'TBICONN.CH'

USER Function MyTeca450()

Local lOk := .T.
Local aCabec := {}
Local aItem := {}
Local aItens := {}
Local aApont := {}
Local aAponts := {}
Local cNumOS := ""
Local nOPC := 3 //inclusão 4//alteração 5//exclusão

Private lMsErroAuto := .F.

//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//| Abertura do ambiente |
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
ConOut(Repl("-",80))

PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01"
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//| Verificacao do ambiente para teste |
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
/*DbSelectArea("SA1")
DbSetOrder(1)

If !SA1->(DbSeek(xFilial("SA1")+"000001"))
lOk := .F.
ConOut("Cadastrar Cliente: 000001 Loja: 01")
EndIf
DbSelectArea("SB1")
DbSetOrder(1)
If !SB1->(DbSeek(xFilial("SB1")+"CODIGO "))
lOk := .F.
ConOut("Cadastrar Produto: CODIGO ")
EndIf
DbSelectArea("SB1")
DbSetOrder(1)
If !SB1->(DbSeek(xFilial("SB1")+"COTACAO "))
lOk := .F.
ConOut("Cadastrar Produto: COTACAO ")
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("2-EMEPNHO",30)+"00000000000000000001"))
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("3-EMPENHO",30)+"00000000000000000002"))
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
If nOPC == 3

//======================Inclusao======================//

ConOut(PadC("Teste de Inclusao da OS",80))
ConOut("Inicio: "+Time())
cNumOS := GetSXENum("AB6","AB6_NUMOS")
RollBackSx8()
// Cabeçalho
aAdd(aCabec,{"AB6_NUMOS" ,cNumOS ,Nil})
aAdd(aCabec,{"AB6_CODCLI" ,"CLI001",Nil})
aAdd(aCabec,{"AB6_LOJA" ,"01",Nil})
aAdd(aCabec,{"AB6_EMISSA" ,dDataBase ,Nil})
aAdd(aCabec,{"AB6_ATEND" ,cUserName ,Nil})
aAdd(aCabec,{"AB6_CONPAG" ,"1 " ,Nil})
aAdd(aCabec,{"AB6_HORA" ,Time() ,Nil})
// Item
aAdd(aItem,{"AB7_ITEM" ,StrZero(1,2) ,Nil})
aAdd(aItem,{"AB7_TIPO" ,"1" ,Nil})
aAdd(aItem,{"AB7_CODPRO" ,"PROD0007 ",Nil})
aAdd(aItem,{"AB7_NUMSER" ,"PROD00070001 ",Nil})
aAdd(aItem,{"AB7_CODPRB" ,"OCO001",Nil})
aAdd(aItens,aItem)
// Apont

aAdd(aApont,{"AB8_ITEM" ,StrZero(1,2) ,Nil})
aAdd(aApont,{"AB8_SUBITE" ,StrZero(1,2) ,Nil})
aAdd(aApont,{"AB8_CODPRO" ,"PROD0007 ",Nil})
aAdd(aApont,{"AB8_CODSER" ,"000001",Nil})
aAdd(aApont,{"AB8_QUANT" ,1 ,Nil})
aAdd(aApont,{"AB8_VUNIT" ,100 ,Nil})
aAdd(aApont,{"AB8_PRCLIS" ,100 ,Nil})
aAdd(aAponts,aApont)


TECA450(,aCabec,aItens,aAponts,3)
If !lMsErroAuto
ConOut("Inclusao com sucesso! ")
Else
ConOut("Erro na inclusao!")
EndIf
aCabec := {}
aItem := {}
aItens := {}
aApont := {}
aAponts:= {}
Endif
If nOPC == 5

//======================Alteracao======================//

ConOut(PadC("Teste de Alteracao da OS",80))

aAdd(aCabec,{"AB6_NUMOS" ,cNumOS ,Nil})
aAdd(aCabec,{"AB6_CODCLI" ,SA1->A1_COD ,Nil})
aAdd(aCabec,{"AB6_LOJA" ,SA1->A1_LOJA ,Nil})
aAdd(aCabec,{"AB6_EMISSA" ,dDataBase ,Nil})
aAdd(aCabec,{"AB6_ATEND" ,cUserName ,Nil})
aAdd(aCabec,{"AB6_CONPAG" ,"002" ,Nil})
aAdd(aCabec,{"AB6_HORA" ,Time() ,Nil})

aAdd(aItem,{"LINPOS" ,"AB7_ITEM","01"})
aAdd(aItem,{"AB7_ITEM" ,StrZero(1,2) ,Nil})
aAdd(aItem,{"AB7_TIPO" ,"1" ,Nil})
aAdd(aItem,{"AB7_CODPRO" ,"000002" ,Nil})
aAdd(aItem,{"AB7_NUMSER" ,"654321" ,Nil})
aAdd(aItem,{"AB7_CODPRB" ,AAG->AAG_CODPRB,Nil})
aAdd(aItens,aItem)

aAdd(aApont,{"LINPOS" ,"AB8_SUBITE","01"})
aAdd(aApont,{"AB8_SUBITE" ,StrZero(1,2) ,Nil})
aAdd(aApont,{"AB8_CODPRO" ,"000002" ,Nil})
aAdd(aApont,{"AB8_CODSER" ,AA5->AA5_CODSER ,Nil})
aAdd(aApont,{"AB8_QUANT" ,1 ,Nil})
aAdd(aApont,{"AB8_VUNIT" ,100 ,Nil})
aAdd(aApont,{"AB8_PRCLIS" ,100 ,Nil})
aAdd(aAponts,aApont)

TECA450(,aCabec,aItens,aAponts,4)
If !lMsErroAuto
ConOut("Alteracao com sucesso! ")
Else
ConOut("Erro na Alteracao!")
EndIf
aCabec := {}
aItem := {}
aItens := {}
aApont := {}
aAponts:= {}
EndIf
If nOPC == 6

//======================Exclusao======================//

ConOut(PadC("Teste de Exclusao da OS",80))
aAdd(aCabec,{"AB6_NUMOS",cNumOS,Nil})
aAdd(aCabec,{"AB6_CODCLI",SA1->A1_COD,Nil})
aAdd(aCabec,{"AB6_LOJA" ,SA1->A1_LOJA,Nil})
aAdd(aCabec,{"AB6_EMISSA",dDataBase,Nil})
aAdd(aCabec,{"AB6_ATEND" ,cUserName,Nil})
aAdd(aCabec,{"AB6_CONPAG","002",Nil})
aAdd(aCabec,{"AB6_HORA" ,Time(),Nil})
aAdd(aItem,{"AB7_ITEM" ,StrZero(1,2),Nil})
aAdd(aItem,{"AB7_TIPO" ,"1",Nil})
aAdd(aItem,{"AB7_CODPRO","000002",Nil})
aAdd(aItem,{"AB7_NUMSER","654321",Nil})
aAdd(aItem,{"AB7_CODPRB",AAG->AAG_CODPRB,Nil})
aAdd(aItens,aItem)
aAdd(aApont,{"AB8_SUBITE",StrZero(1,2),Nil})
aAdd(aApont,{"AB8_CODPRO","000002",Nil})
aAdd(aApont,{"AB8_CODSER",AA5->AA5_CODSER,Nil})
aAdd(aApont,{"AB8_QUANT",1,Nil})
aAdd(aApont,{"AB8_VUNIT",100,Nil})
aAdd(aApont,{"AB8_PRCLIS",100,Nil})
aAdd(aAponts,aApont)
TECA450(,aCabec,aItens,aAponts,5)
If !lMsErroAuto
ConOut("Exclusao com sucesso! ")
Else
ConOut("Erro na Exclusao!")
EndIf
aCabec := {}
aItem := {}
aItens := {}
aApont := {}
aAponts:= {}
ConOut("Fim : "+Time())
ENDIF
EndIf

RESET ENVIRONMENT
Return(.T.)

 

Saiba Mais

TECA450 - Geração automática de atualizacao das O.S

Esse artigo foi útil?
Usuários que acharam isso útil: 0 de 0

0 Comentários

Por favor, entre para comentar.
X Fechar

Olá ,

Há pendência referente a um de seus produtos contratados para a empresa ().

Entre em contato com o Centro de Serviços TOTVS para tratativa.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cobrança – Verificação de pendências financeiras . clique aqui.

TOTVS

X Fechar

Olá ,

Seu contato não está cadastrado no Portal do Cliente como um perfil autorizado a solicitar consultoria telefônica.

Por gentileza, acione o administrador do Portal de sua empresa para: (1)configurar o seu acesso ou (2)buscar um perfil autorizado para registro desse atendimento.

Em caso de dúvidas sobre a identificação do contato administrador do Portal, ligue (11) 4003-0015, opção 7 e, em seguida, opção 4 para buscar o suporte com o time de Assessoria ao Portal do Cliente. . clique aqui.

TOTVS

X Fechar

Olá ,

Para o atendimento de "Consultoria Telefônica" você deverá estar de acordo com o Faturamento.

TOTVS

X Fechar

Olá,

Algo inesperado ocorreu, e o usuario nao foi reconhecido ou você nao se encontra logado

Por favor realize um novo login

Em caso de dúvidas, entre em contato com o administrador do Portal de Clientes de sua empresa para verificação do seu usuário, ou Centro de Serviços TOTVS.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cadastros . clique aqui.

TOTVS

Chat _

Preencha os campos abaixo para iniciar o atendimento:

Chat _