Histórico da Página
...
Produto: | Protheus | ||||||||||||||||
Ocorrência: | Rotina Automática - MATA125 (Execauto) | ||||||||||||||||
Ambiente: | SIGACOM - Compras | ||||||||||||||||
Descrição: | Essa rotina permite o registro de qualquer Contrato de Parceria na empresa. O Contrato de Parceria é um contrato de fornecimento de produtos por um determinado período. | ||||||||||||||||
Sintaxe: | MATA125 - Contrato de Parceria ( [ ExpN1 ] [ ExpA1 ] [ ExpA2 ])
| ||||||||||||||||
Retorno: | L (Logico) = .T. (Apresentou erro) / .F. (OK) | ||||||||||||||||
Sintaxe: | MATA125 - Contrato de Parceria ( [ ExpN1 ] [ ExpA1 ] [ ExpA2 ]) | ||||||||||||||||
Nome | Tipo | Descrição | Default | ExpA1 | Array of Record | Cabeçalho do Contrato de Parceria na Rotina Automática. | ExpA2 | Array of Record | Itens do Contrato de Parceria na Rotina Automática. | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ExpN1 | Numérico | Opção do aRotina na Rotina Automática. | 3 - Inclusão 4 - Alteração 5 - Exclusão | ExpA3 | Array | Rateio de Projeto | Os campos de cabeçalho do Contrato de Parceria (C3_EMISSAO / C3_FORNECE / C3_LOJA / C3_COND / C3_CONTATO / C3_FILENT) deverão ser obrigatoriamente informados nesta rotina. Os campos de itens do Contrato de Parceria(C3_PRODUTO / C3_QUANT / | C7C3_PRECO) deverão ser obrigatoriamente informados nesta rotina. Se informar o campo (C3_MOEDA), o campo (C3_TXMOEDA) também devera ser informado nos itens do contrato. Se for alterar ou excluir um contrato o campo (C3_REC_WT) tem que estar preenchido com o numero do registro (SC3->(Recno()) Alteração de Contrato de Parceria: Para alterar/excluir item já existente no Contrato de Parceria, deve-se utilizar o LINPOS e AUTODELETA Para incluir um novo item em um contrato já existente, deve-se informar o campo (C3_ITEM) com um registro novo, e NÃO utilizar o LINPOS e AUTODELETA. | Rateio de Projeto: (Opção disponível a partir da versão 11)
Exemplos:
#INCLUDE "MATA125.CH"
#INCLUDE "FWMVCDEF.CH"
#INCLUDE "PROTHEUS.CH"
...
For nX := 1 To 2
aLinha := {}
aadd(aLinha,{"C3_FILIAL",xFilial("SC3"),Nil})
aadd(aLinha,{"C3_ITEM",StrZero(nX,len(SC3->C3_ITEM)),Nil})
If nX==1
aadd(aLinha,{"C3_PRODUTO" ,"COM000000000000000000000000047",Nil})
aadd(aLinha,{"C3_QUANT",1,Nil})
aadd(aLinha,{"C3_PRECO",39,Nil})
aadd(aLinha,{"C3_TOTAL",39,Nil})
else
aadd(aLinha,{"C3_PRODUTO" ,"COM000000000000000000000000126",Nil})
aadd(aLinha,{"C3_QUANT",2,Nil})
aadd(aLinha,{"C3_PRECO",100,Nil})
aadd(aLinha,{"C3_TOTAL",200,Nil})
END /* aadd(aLinha,{"C3_PRODUTO" ,"COM000000000000000000000000047",Nil})
aadd(aLinha,{"C3_QUANT",2,Nil})
aadd(aLinha,{"C3_PRECO",135,Nil})
aadd(aLinha,{"C3_TOTAL",270,Nil}) */
aadd(aLinha,{"C3_DATPRI",dDataBase,Nil})
aadd(aLinha,{"C3_DATPRF",dDataBase,Nil})
aadd(aItens,aLinha)
Next nX nX
//Rateio Projeto
aAdd(aRatPrj, Array(2))
aRatPrj[1][1] := "0001"
aRatPrj[1][2] := {}
...
...
MSExecAuto( {|x,y,z| mata125(x,y,z)},aCab,aItens,3,aRatPrj)
If lMsErroAuto
MostraErro()
Else
MsgAlert("Incluido com sucesso! "+cDoc)
Endif
*/
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//| Teste de Alteração
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
...
For nX := 1 To 3
aLinha := {}
//aadd(aLinha,{"C3_FILIAL",xFilial("SC3"),Nil})
//aadd(aLinha,{"LINPOS","C3_ITEM",StrZero(nX,len(SC3->C3_ITEM)),Nil})
//aadd(aLinha,{"AUTDELETA","N",Nil})
If nX==1
aadd(aLinha,{"C3_PRODUTO" ,"COM000000000000000000000000047",Nil})
aadd(aLinha,{"C3_QUANT",1,Nil})
aadd(aLinha,{"C3_PRECO",59,Nil})
aadd(aLinha,{"C3_TOTAL",59,Nil})
elseif nx==2
aadd(aLinha,{"C3_PRODUTO" ,"COM000000000000000000000000126",Nil})
aadd(aLinha,{"C3_QUANT",2,Nil})
aadd(aLinha,{"C3_PRECO",110,Nil})
aadd(aLinha,{"C3_TOTAL",220,Nil})
elseif nx==3
aadd(aLinha,{"C3_PRODUTO" ,"COM000000000000000000000000167",Nil})
aadd(aLinha,{"C3_QUANT",2,Nil})
aadd(aLinha,{"C3_PRECO",110,Nil})
aadd(aLinha,{"C3_TOTAL",220,Nil})
END
aadd(aLinha,{"C3_DATPRI",dDataBase,Nil})
aadd(aLinha,{"C3_DATPRF",dDataBase,Nil})
aadd(aItens,aLinha)
Next nX
...