#Include'Protheus.ch'
#Include'Totvs.ch'
#Include'Tbiconn.ch'
UserFunctionPO400Auto()
Local aCab:={}//Array com os dados da Capa do Purchase Order
Local aItem := {} //Array com os dados dos Itens do Purchase Order
Local nOpc:= 5 //Opção {"W3_REG" , 3 , NIL},; //Item novo a ser |
| executada. 5-Exclusão
Private lMsErroAuto := .F.
Private lMsHelpAuto := .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 "adicionado na Alteração.
{"W3_PRECO" , 103.00000 , NIL},;
{"W3_FABR" , "GEN-01" , NIL},;
{"W3_FABLOJ" , "00" , NIL},;
|
| ,NIL})
AADD(aCab,W2FORLOJ01 )AADD(aCab,W2COMPRA,GEN)
AADD(aCab,{"W2_IMPORT" ,"GN",NIL})
AADD(aCab,W2AGENTE"GN")
AADD(aCab,W2TIPOEM "GN" )AADD(aCab,W2ORIGEM "SPO" )AADD(aCab,W2DEST "GRU" )AADD(aCab,W2INCOTER "CIF" )AADD(aCab,W2FREPPCCPP
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 //Solicitação que será adicionado o novo item. O W3_REG deve ter um núemro que ainda não existe na SI
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
|
Bloco de código |
---|
language | py |
---|
theme | Eclipse |
---|
title | Modelo de Alteração do Purchase Order por rotina automática com Exclusão de item |
---|
linenumbers | true |
---|
collapse | true |
---|
| #Include 'Protheus.ch'
#Include 'Totvs.ch'
#Include 'Tbiconn.ch'
User Function 1PO400Auto()
Local aCab := {} //Array com os dados da Capa do Purchase Order
Local aItem := |
| aAdd(aItem,;
{"W3_COD_I" , "GEN-00" , NIL},; Itens do Purchase Order
Local nOpc:= 4 //Opção a ser executada. 4-Alteração
Private lMsErroAuto := .F.
Private lMsHelpAuto := .T.
|
| {"W3_CC" , "GEN00"RPCSetEnv("99", "01", NIL, NIL, "EIC", NIL, {"SW2", "SW3"})
//Capa |
| , NIL},; do Purchase Order
AADD(aCab,{"W2_PO_NUM" , "PO-0004" |
|
W3REG 1 ,;)
AADD(aCab,{"W2_FORN" , "GEN-00" |
|
{"W3_PRECO" 100.00000 , NIL},;NIL})
AADD(aCab,{"W2_FORLOJ" , "00" , |
| NIL})
AADD(aCab,{"W2_COMPRA" , |
| {W3_FABR,"0001",; W3FABLOJ 01 ,NIL},; , NIL})
AADD(aCab,{"W2_AGENTE" , |
|
{"W3_FORN" ,"0001",; W3FORLOJ 01",;)
AADD(aCab,{"W2_ORIGEM" , "SPO" |
|
W3QTDE10.000,NIL},; , NIL})
AADD(aCab,{"W2_INCOTER" , "CIF" |
|
{"W3_DT_EMB" , dDataBase,; W3DT_ENTR dDataBase,; W3PESOL,1.00000000,NIL},;
{"W3_PESO_BR", 1.000000 , NIL})
AADD(aCab,{"W2_MOEDA" , "US$" |
| ,NIL},;
W3SALDOQ0.000,; W3SINUM"SI0001" ,NIL}})
aAdd(aItem,{;
W3CODI GEN-00" ,;)
//Dados para os Itens do Purchase Order
aAdd(aItem,{;
{"W3_COD_ |
| CC GEN00 REG2
{"W3_REG" , 1 , NIL},;
{"W3_PRECO" , |
| 100 0001 01 0001 01 15
{"W3_DT_EMB" , dDataBase , NIL},;
{"W3_DT_ENTR", dDataBase , NIL},;
{"W3_PESOL" , |
| 10000000090000000 , NIL},;
{"W3_PESO_BR", 1.000000 , NIL},; |
| SALDOQ0.000, NIL},SINUMSI0001" ,NIL}})
MSExecAuto({|a,b,c,d|EICPO400(a,bc,d)},aCab,aItem,nOpc)
IflMsErroAuto
MostraErro()
Else
MsgInfo("Ok - P.O.")
EndIf"GEN00" , NIL},;
{"W3_REG" , 2 , NIL},;
|
|
RPCClearEnv()
Return Nil
|