Passo a passo: | //Inclusão de uma entrada de veículos por compra gerando nota fiscal #include "totvs.ch"
User Function INCVX0NF() Local xEAutoCab := {} // Campos Cabecalho Local xEAutoItens := {} // Campos Itens Local xAutoIt := {}
Private lMsErroAuto := .f.
////////////////////////// // NF ENTRADA // ///////////////////////// aAdd(xEAutoCab,{"VVF_FILIAL" , xFilial("VVF") ,Nil}) aAdd(xEAutoCab,{"VVF_FORPRO" , "1" ,Nil}) aAdd(xEAutoCab,{"VVF_CLIFOR" , "F" ,Nil}) aAdd(xEAutoCab,{"VVF_CODFOR" , "000001" ,Nil}) aAdd(xEAutoCab,{"VVF_LOJA " , "01" ,Nil}) aAdd(xEAutoCab,{"VVF_DATEMI" , dDataBase ,Nil}) aAdd(xEAutoCab,{"VVF_FORPAG" , "001" ,Nil}) aAdd(xEAutoCab,{"VVF_NATURE" , "9999999999" ,Nil}) aAdd(xEAutoCab,{"VVF_ESPECI" , "SPED" ,Nil})
//ITEM xAutoIt := {} aAdd(xAutoIt,{"VVG_FILIAL" , xFilial("VVG") ,Nil}) aAdd(xAutoIt,{"VVG_CHASSI" , "CHASSI_TESTE" ,Nil}) aAdd(xAutoIt,{"VVG_CHAINT" , "000000" ,Nil}) aAdd(xAutoIt,{"VVG_CODTES" , "001" ,Nil}) aAdd(xAutoIt,{"VVG_LOCPAD" , "MN" ,Nil}) aAdd(xAutoIt,{"VVG_VALUNI" , 999999.99 ,Nil}) aAdd(xAutoIt,{"VVG_ESTVEI" , "0" ,Nil}) aAdd(xAutoIt,{"VVG_CODORI" , "0" ,Nil}) aAdd(xAutoIt,{"VVG_SITTRI" , "0" ,Nil}) aAdd(xEAutoItens,aClone(xAutoIt))
cBkpFunName := FunName() SetFunName('VEIXA001')
MSExecAuto( { |a,b,c,d,e,f,g,h,i| VEIXX000(a,b,c,d,e,f,g,h,i) }, xEAutoCab,xEAutoItens,{} ,3 ,"0", ,.f. )
SetFunName(cBkpFunName)
If lMsErroAuto MostraErro() Else MsgInfo("Movimento criado com sucesso") EndIf
Return
//Cancelamento de uma entrada de veículos #include "totvs.ch" User Function DELVX0NF() Local xAutoCab := {} // Campos Cabecalho Local xAutoItens := {} // Campos Itens Local xAutoIt := {}
Local aParParamBox := {} Local aRetParamBox := {}
Private lMsHelpAuto := .t. Private lMsErroAuto := .f.
AADD( aParParamBox , { 1 , RetTitle("F1_DOC") , Space(TamSX3("F1_DOC" )[1]) , "" , "" , "" , "" , 40 , .T. } ) AADD( aParParamBox , { 1 , RetTitle("F1_SERIE") , Space(TamSX3("F1_SERIE" )[1]) , "" , "" , "" , "" , 40 , .T. } ) AADD( aParParamBox , { 1 , RetTitle("F1_FORNECE") , Space(TamSX3("F1_FORNECE")[1]) , "" , "" , "" , "" , 40 , .T. } ) AADD( aParParamBox , { 1 , RetTitle("F1_LOJA") , Space(TamSX3("F1_LOJA" )[1]) , "" , "" , "" , "" , 40 , .T. } )
If ! ParamBox(aParParamBox,"Entrada Veiculo - NF",@aRetParamBox,,,,,,,, .f., .f.) Return EndIf
// F1_DOC+F1_SERIE+F1_FORNECE+F1_LOJA+F1_TIPO //cNota := "1812110021 00001601" cNota := aRetParamBox[1] + aRetParamBox[2] + aRetParamBox[3] + aRetParamBox[4] //cNota := FMX_INPUTBOX("Numero da nota fiscal de entrada", Space(TamSX3("F1_DOC")[1] + TamSX3("F1_SERIE")[1])) //cNota := FMX_INPUTBOX("Numero da nota fiscal de entrada", cNota )
SF1->(dbSetOrder(1)) If ! SF1->(dbSeek(xFilial("SF1") + cNota )) MsgStop("Nota fiscal não encontrada") Return EndIf
cPergunta := "Nota: " + SF1->F1_SERIE + " - " + SF1->F1_DOC + CHR(13) + CHR(10) + ; "Fornecedor: " + sf1->F1_FORNECE + " - " + sf1->F1_LOJA
If ! MsgYesNo("Confirma Cancelamento da nota fiscal " + chr(13) + chr(10) + chr(13) + chr(10) + cPergunta ) Return EndIf
aAdd(xAutoCab, { 'VVF_NUMNFI' , SF1->F1_DOC , NIL } ) aAdd(xAutoCab, { 'VVF_SERNFI' , SF1->F1_SERIE , NIL } ) aAdd(xAutoCab, { 'VVF_CODFOR' , SF1->F1_FORNECE , NIL } ) aAdd(xAutoCab, { 'VVF_LOJA' , SF1->F1_LOJA , NIL } )
MSExecAuto(; { |a,b,c,d,e,f,g,h,i| ; VEIXX000(a ,b ,c ,d ,e ,f ,g ,h ,i ) },; xAutoCab,{} ,{} ,5 ,"0" , ,.f. , , ) If lMsErroAuto MostraErro() Else MsgInfo("Movimento cancelado com sucesso.") EndIf
Return
|