#INCLUDE "RWMAKE.CH"
#INCLUDE "TBICONN.CH"
// BIBLIOTECA
#include "Protheus.ch"
User Function rmata116()
Local aCabec := {}
Local aItens := {}
Local aLinha := {}
Local aRatcc := {}
Local nX := 0
Local nY := 0
Local nTamFilial := 0
Local lOk := .T.
Local cFilSF1 := ""
Private lMsErroAuto := .F.
Private lMsHelpAuto := .T.
//------------------------//| Abertura do ambiente |//------------------------
//PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01" MODULO "COM" TABLES "SB1","SD1","SF1"
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//| Verificacao do ambiente para teste |
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
//-- Verifica informacoes de produto
dbSelectArea("SB1")
dbSetOrder(1)
If !SB1->(MsSeek(xFilial("SB1")+"001"))
lOk := .F.
ConOut("Cadastrar produto: 001")
EndIf
//-- Verifica informacoes da TES
dbSelectArea("SF4")
dbSetOrder(1)
If !SF4->(MsSeek(xFilial("SF4")+"001"))
lOk := .F.
ConOut("Cadastrar TES: 001")
EndIf
//-- Verifica informacoes da condicao de pagamento
dbSelectArea("SE4")
dbSetOrder(1)
If !SE4->(MsSeek(xFilial("SE4")+"001"))
lOk := .F.
ConOut("Cadastrar condicao de pagamento: 001")
EndIf
//-- Verifica fornecedor
dbSelectArea("SA2")
dbSetOrder(1)
If !SA2->(MsSeek(xFilial("SA2")+"001"))
lOk := .F.
ConOut("Cadastrar fornecedor: 001")
EndIf
If lOk
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//| Carrega ate 3 documentos de origem - Fornecedor 000001 |
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
dbSelectArea("SF1")
dbSetOrder(1)
MsSeek(xFilial("SF1"))
While !EOF()
IF ((SF1->F1_FORNECE+SF1->F1_LOJA) =="001 01")
if nX<3
cFilSF1 := xFilial("SF1")
nTamFilial := Len(cFilSF1)
aadd(aItens,{{"PRIMARYKEY",AllTrim(SubStr(&(IndexKey()),nTamFilial + 1))}}) //Tratamento para Gestao Empresas
else
exit
Endif
nX++
EndIf
dbskip()
EndDo
IF nX >0
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//| Teste de Inclusao |
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
aadd(aCabec,{"",dDataBase-90}) //Data Inicial
aadd(aCabec,{"",dDataBase}) //Data Final
aadd(aCabec,{"",2}) //2-Inclusao;1=Exclusao
aadd(aCabec,{"","001 "}) //Fornecedor do documento de Origem
aadd(aCabec,{"","01"}) //Loja de origem
aadd(aCabec,{"",1}) //Tipo da nota de origem: 1=Normal;2=Devol/Benef
aadd(aCabec,{"",2}) //1=Aglutina;2=Nao aglutina
aadd(aCabec,{"F1_EST",""})
aadd(aCabec,{"",1000}) //Valor do conhecimento
aadd(aCabec,{"F1_FORMUL",1})
aadd(aCabec,{"F1_DOC","000043"}) //..Numero da NF de Conhecimento de Frete
aadd(aCabec,{"F1_SERIE","CF "})
aadd(aCabec,{"F1_FORNECE","001 "})
aadd(aCabec,{"F1_LOJA","01"})
aadd(aCabec,{"","001"}) //TES
aadd(aCabec,{"F1_BASERET",0})
aadd(aCabec,{"F1_ICMRET",0})
aadd(aCabec,{"F1_COND","001"})
aadd(aCabec,{"F1_EMISSAO",dDataBase})
aadd(aCabec,{"F1_ESPECIE","NF"})
aadd(aCabec,{"E2_NATUREZ",""})
aadd(acabec,{"F1_DESPESA",10})
aadd(acabec,{"F1_DESCONT",20})
If Len(aItens)>0
//item da nota //Item do Rateio , Perc. Rate ,Cent.de Cus,,,, Alias,Linha Deletada, Item 02 do Rateio.
aRatcc := {{"0001" ,{{'01' ,50 ,"000000000",,,,"SDE",,,,.F. },{'02',50,"000001",,,,"SDE",,,,.F.}}}}
MATA116(aCabec,aItens,,,aRatcc)
EndIf
If lMsErroAuto
MostraErro()
Alert("Erro!")
Else
Alert("Ok!")
Endif
EndIf
EndIf
Return(.T.) |