Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Bloco de código
languagepy
themeEclipse
titleModelo de Inclusão do Purchase Order por rotina automática
linenumberstrue
#INCLUDE#Include "Protheus.CH"
#include "rwmake'Protheus.ch"'
#include#Include "TOTVS'Totvs.ch"'
#include#Include "TBICONN'Tbiconn.ch"'

User Function MyAtfa012
PO400Auto()
Local aCab  := {}      
Local aAreaaItem  := GetArea(){}
	Local cBase nOpc:= 3 "ATFX01"//"0000000000"
	Local cItemInclusão
Private lMsErroAuto := "0002"
	Local nQtd.F.
Private lMsHelpAuto := 1
	Local cChapa := "AJEDS10"//"00000"
	Local cPatrim := "N"
	Local cTipo := "01"//"01"

	Local cGrupo := ""
	Local dAquisic //:= dDataBase //:= CTOD("01/06/20")//dDataBase
	Local dIndDepr //:= RetDinDepr(dDataBase)
	Local cDescric := "Teste 01"

	Local cHistor := "TESTE "
	Local cContab := "11101"
	Local cCusto := "CDL"
	Local cSubCon := "000000001"
	Local cClvlCon := "000000000"

	Local nValor := 1000
	Local nTaxa := 10
	Local nTamBase //:= TamSX3("N3_CBASE")[1]
	Local nTamChapa //:= TamSX3("N3_CBASE")[1]

	Local aParam := {}
	Local aCab := {}
	Local aItens := {}

	Private lMsErroAuto := .F.
	Private lMsHelpAuto := .T.

	PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01 " MODULO "ATF" TABLES "SN1","SN3"

		dAquisic := dDataBase //:= CTOD("01/06/20")//dDataBase
		dIndDepr := RetDinDepr(dDataBase)

		DBSelectArea(aArea)
		nTamBase := TamSX3("N3_CBASE")[1]
		nTamChapa := TamSX3("N3_CBASE")[1]

		aCab := {}
		AAdd(aCab,{"N1_CBASE" , cBase ,NIL})
		AAdd(aCab,{"N1_ITEM" , cItem ,NIL})
		AAdd(aCab,{"N1_AQUISIC", dDataBase ,NIL})
		AAdd(aCab,{"N1_DESCRIC", cDescric ,NIL})
		AAdd(aCab,{"N1_QUANTD" , nQtd ,NIL})
		AAdd(aCab,{"N1_CHAPA" , cChapa ,NIL})
		AAdd(aCab,{"N1_PATRIM" , cPatrim ,NIL})
		AAdd(aCab,{"N1_GRUPO" , cGrupo ,NIL})
		//Coloque os campos desejados aqui 

		aItens := {}
		//-- Preenche itens


		AAdd(aItens,{;
		{"N3_CBASE" , cBase ,NIL},;
		{"N3_ITEM" , cItem ,NIL},;
		{"N3_TIPO" , cTipo ,NIL},;
		{"N3_BAIXA" , "0" ,NIL},;
		{"N3_HISTOR" , cHistor ,NIL},;
		{"N3_CCONTAB" , cContab ,NIL},;
		{"N3_CUSTBEM" , cCusto ,NIL},;
		{"N3_CDEPREC" , cContab ,NIL},;
		{"N3_CDESP" , cContab ,NIL},;
		{"N3_CCORREC" , cContab ,NIL},;
		{"N3_CCUSTO" , cCusto ,NIL},;
		{"N3_DINDEPR" , dIndDepr ,NIL},;
		{"N3_VORIG1" , nValor ,NIL},;
		{"N3_TXDEPR1" , nTaxa ,NIL},;
		{"N3_VORIG2" , nValor ,NIL},;
		{"N3_TXDEPR2" , nTaxa ,NIL},;
		{"N3_VORIG3" , nValor ,NIL},;
		{"N3_TXDEPR3" , nTaxa ,NIL},;
		{"N3_VORIG4" , nValor ,NIL},;
		{"N3_TXDEPR4" , nTaxa ,NIL},;
		{"N3_VORIG5" , nValor ,NIL},;
		{"N3_SUBCCON" , cSubCon ,NIL},;
		{"N3_CLVLCON" , cClvlCon ,NIL},;
		{"N3_TXDEPR5" , nTaxa ,NIL};
		})
		//Coloque os campos desejados aqui

		Begin Transaction

			MSExecAuto({|x,y,z| Atfa012(x,y,z)},aCab,aItens,3,aParam)
			If lMsErroAuto 

			MostraErro()
				DisarmTransaction()
			Endif
		End Transaction

		RestArea(aArea)
	RESET ENVIRONMENT

Return.T.

   RPCSetEnv("99", "01", NIL, NIL, "EIC", NIL, {"SW2", "SW3"})
   
   //Capa do Purchase Order
   AADD(aCab,{"W2_PO_NUM"  , "PO-0001" , NIL})
   AADD(aCab,{"W2_PO_DT"   , dDataBase     , NIL})
   AADD(aCab,{"W2_FORN"    , "0001  "              , NIL}) 
   AADD(aCab,{"W2_FORLOJ"  , "01"                  , NIL})
   AADD(aCab,{"W2_COMPRA"  , "GEN"                 , NIL})
   AADD(aCab,{"W2_IMPORT"  , "GN"                  , NIL})
   AADD(aCab,{"W2_AGENTE"  , "GN "                 , NIL})
   AADD(aCab,{"W2_TIPO_EM" , "GN"                  , NIL})
   AADD(aCab,{"W2_ORIGEM"  , "SPO"                 , NIL})
   AADD(aCab,{"W2_DEST"    , "GRU"                 , NIL})
   AADD(aCab,{"W2_INCOTER" , "CIF"                 , NIL})
   AADD(aCab,{"W2_FREPPCC" , "CC"                  , NIL})
   AADD(aCab,{"W2_COND_PA" , "GN   "               , NIL})
   AADD(aCab,{"W2_MOEDA"   , "US$"                 , NIL})
   AADD(aCab,{"W2_DT_PAR"  , dDataBase             , NIL})
   AADD(aCab,{"W2_PARID_U" , 1.000000              , NIL})
   AADD(aCab,{"W2_E_LC"    , "2"                   , NIL})

   //Dados para os Itens do Purchase Order
   aAdd(aItem,{; 
      {"W3_COD_I"  ,  "GEN-00"   , NIL},;              
      {"W3_CC"     ,  "GEN00"         , NIL},;              
      {"W3_REG"    ,  1           , NIL},;              
      {"W3_PRECO"  ,  100.00000       , NIL},;                  
      {"W3_FABR"   ,  "0001  "        , NIL},; 
      {"W3_FABLOJ" ,  "01"            , NIL},;                
      {"W3_FORN"   ,  "0001  "        , NIL},; 
      {"W3_FORLOJ" ,  "01"            , NIL},;                
      {"W3_QTDE"   ,  10.000           , NIL},;              
      {"W3_DT_EMB" ,  dDataBase       , NIL},;
      {"W3_DT_ENTR",  dDataBase       , NIL},;
      {"W3_PESOL"  ,  1.00000000      , NIL},;
      {"W3_PESO_BR",  1.000000        , NIL},;     
      {"W3_SALDO_Q",  0.000           , NIL}})
      {"W3_SI_NUM" ,  PadR("000025",   TamSX3("W3_SI_NUM")[1]),     NIL}})

   aAdd(aItem,{; 
      {"W3_COD_I"  ,  "GEN-00"   , NIL},;              
      {"W3_CC"     ,  "GEN00"         , NIL},;              
      {"W3_REG"    ,  2           , NIL},;              
      {"W3_PRECO"  ,  100.00000       , NIL},;                  
      {"W3_FABR"   ,  "0001  "        , NIL},; 
      {"W3_FABLOJ" ,  "01"            , NIL},;                
      {"W3_FORN"   ,  "0001  "        , NIL},; 
      {"W3_FORLOJ" ,  "01"            , NIL},;                
      {"W3_QTDE"   ,  15.000           , NIL},;              
      {"W3_DT_EMB" ,  dDataBase       , NIL},;
      {"W3_DT_ENTR",  dDataBase       , NIL},;
      {"W3_PESOL"  ,  1.00000000      , NIL},;
      {"W3_PESO_BR",  1.000000        , NIL},;     
      {"W3_SALDO_Q",  0.000           , NIL}})
      {"W3_SI_NUM" ,  PadR("000025",   TamSX3("W3_SI_NUM")[1]),     NIL}})


   MSExecAuto({|a,b,c,d| EICPO400(a,b,c,d)}, NIL, aCab, aItem, nOpc)

   If lMsErroAuto  
      MostraErro()
   Else
      MsgInfo("Ok - P.O.")
   EndIf       

RPCClearEnv()

Return Nil



Totvs custom tabs box
tabsPasso 01, Passo 02, Passo 03, Passo 04
idspasso1,passo2
Totvs custom tabs box items
defaultyes
referenciapasso1

Totvs custom tabs box items
defaultno
referenciapasso2

...