Árvore de páginas

Versões comparadas

Chave

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

...

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 ])


NomeTipoDescriçãoDefault
ExpA1Array of RecordCabeçalho do Contrato de Parceria na Rotina Automática.
ExpA2Array of RecordItens do Contrato de Parceria na Rotina Automática.
ExpN1NuméricoOpção do aRotina na Rotina Automática.

3 - Inclusão

4 - Alteração

5 - Exclusão

Retorno:

L (Logico) = .T. (Apresentou erro) / .F. (OK)

Sintaxe:

MATA125 - Contrato de Parceria ( [ ExpN1 ] [ ExpA1 ] [ ExpA2 ])


NomeTipoDescriçãoDefault
ExpA1Array of RecordCabeçalho do Contrato de Parceria na Rotina Automática.
ExpA2Array of RecordItens do Contrato de Parceria na Rotina Automática.
ExpN1NuméricoOpção do aRotina na Rotina Automática.

3 - Inclusão

4 - Alteração

5 - Exclusão

ExpA3ArrayRateio de Projeto

Observações: 

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 / C7_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)

O array de projeto deve ser passado com todos os campos e seguindo a mesma ordem do exemplo abaixo.


Exemplos:

#INCLUDE "MATA125.CH"
#INCLUDE "FWMVCDEF.CH"
#INCLUDE "PROTHEUS.CH"

...

    aadd(aLinha,{"C3_DATPRI",dDataBase,Nil})    
    aadd(aLinha,{"C3_DATPRF",dDataBase,Nil})    
    aadd(aItens,aLinha)
Next nX       


//Rateio Projeto
aAdd(aRatPrj, Array(2))
aRatPrj[1][1] := "0001"
aRatPrj[1][2] := {}

For nX := 1 To Len(aItemPrj)
aLinha := {}
aAdd(aLinha, {"AJ7_FILIAL" , xFilial("AJ7") , Nil})
aAdd(aLinha, {"AJ7_PROJET" , aItemPrj[nX][1], Nil})
aAdd(aLinha, {"AJ7_TAREFA" , PadR(aItemPrj[nX][2],TamSX3("AF9_TAREFA")[1]), Nil})
aAdd(aLinha, {"AJ7_NUMPC" , cDoc , Nil})
aAdd(aLinha, {"AJ7_ITEMPC" , "0001" , Nil})
aAdd(aLinha, {"AJ7_COD" , "0001" , Nil})
aAdd(aLinha, {"AJ7_QUANT" , 1 , Nil})
aAdd(aLinha, {"AJ7_REVISA" , "0001" , Nil})
aAdd(aRatPrj[1][2], aClone(aLinha))
Next nX

    
MSExecAuto( {|x,y,z| mata125(x,y,z)},aCab,aItens,3,aRatPrj)             

If lMsErroAuto    
    MostraErro()
Else    
    MsgAlert("Incluido com sucesso! "+cDoc)
Endif  
*/

...