Árvore de páginas

Versões comparadas

Chave

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

Descrição:

Função utilizada para

geração da

gerar a Comissão de Vendas via rotina automática (ExecAuto).

Exemplos:

#INCLUDE "PROTHEUS.CH"
#INCLUDE "TBICONN.CH"

User Function

Tmata490

MyMata490()

Local

aVetor

aAuto := {}

Private

lMsErroAuto := .F.

Private lMsHelpAuto := .T.
aVetor:={ {

PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01" MODULO "FAT" TABLES "SE3","SA1","SA3"

//Posiciona no Cliente/Loja
SA1->(dbSetOrder(1))
SA1->(dbSeek(xFilial("SA1")+"00000402"))

//Posiciona no Vendedor
SA3->(dbSetOrder(1))
SA3->(dbSeek(xFilial("SA3")+"000001"))

//***** Exemplo de Inclusão *****
aAdd(aAuto,{"E3_VEND" ,

"000002",NIL},;

SA3->A3_COD ,Nil})
aAdd(aAuto,{"E3_NUM" ,"

000000233

123456" ,

NIL

Nil})
aAdd(aAuto,

;

{"E3_EMISSAO" ,dDataBase ,

NIL

Nil})
aAdd(aAuto,

;

{"E3_SERIE" ,"

1

UNI" ,

NIL

Nil})
aAdd(aAuto,

;

{"E3_CODCLI" ,

"000005",NIL},;

SA1->A1_COD ,Nil})
aAdd(aAuto,{"E3_LOJA" ,

"16",NIL},;

SA1->A1_LOJA ,Nil})
aAdd(aAuto,{"E3_BASE" ,

2000.00

1000 ,

NIL

Nil})
aAdd(aAuto,

;

{"E3_PORC" ,10 ,

NIL},;

Nil})
aAdd(aAuto,{"E3_DATA" ,dDataBase ,Nil})
aAdd(aAuto,{"E3_PREFIXO" ,"

1

001" ,

NIL

Nil})
aAdd(aAuto,

;

{"E3_PARCELA" ,"

A

1" ,

NIL

Nil})
aAdd(aAuto,

;

{"E3_SEQ" ,"  " ,

NIL},;

Nil})
aAdd(aAuto,{"E3_TIPO" ,"DH" ,Nil})
aAdd(aAuto,{"E3_

MOEDA

PEDIDO" ,"

01

654321" ,

NIL

Nil})
aAdd(aAuto,

;

{"E3_VENCTO" ,dDataBase ,

NIL

Nil})
aAdd(aAuto,

;

{"E3_PROCCOM" ,"

TESTE

INCLUSAO" ,

NIL}}

Nil})
aAdd(aAuto,{"E3_MOEDA" ,"01" ,Nil})

MSExecAuto({|x,y|

mata490

Mata490(x,y)},

aVetor

aAuto,3) //Inclusao

If lMsErroAuto
Alert("Erro Inclusão")
MostraErro()
Endif


//***** Exemplo de Alteração *****
SE3->(dbSetOrder(

1

3)) //E3_FILIAL+E3_VEND+E3_CODCLI+E3_LOJA+E3_PREFIXO+E3_NUM+E3_PARCELA
SE3->(dbSeek(xFilial("SE3")

+"1 "+"000000233

+SA3->A3_COD+SA1->A1_COD+SA1->A1_LOJA+"001"+"

A

123456789"+"1"+"

000002

DH"))

aVetor

aAuto := {}
aAdd(aAuto,{"E3_VEND" ,

"000002",NIL},;

SA3->A3_COD ,Nil})
aAdd(aAuto,{"E3_NUM" ,"

000000233

123456789" ,

NIL

Nil})
aAdd(aAuto,

;

{"E3_EMISSAO" ,dDataBase ,

NIL

Nil})
aAdd(aAuto,

;

{"E3_SERIE" ,"

1

UNI" ,

NIL

Nil})
aAdd(aAuto,

;

{"E3_CODCLI" ,

"000005",NIL},;

SA1->A1_COD ,Nil})
aAdd(aAuto,{"E3_LOJA" ,

"16",NIL},;

SA1->A1_LOJA ,Nil})
aAdd(aAuto,{"E3_BASE" ,1000

.00

,

NIL

Nil})
aAdd(aAuto,

;

{"E3_PORC" ,

5

10 ,

NIL

Nil}

,;

)
aAdd(aAuto,{"E3_DATA" ,dDataBase ,Nil})
aAdd(aAuto,{"E3_PREFIXO" ,"

1

001" ,

NIL

Nil})
aAdd(aAuto,

;

{"E3_PARCELA" ,"

A

1" ,

NIL

Nil})
aAdd(aAuto,

;

{"E3_SEQ" ," " ,

NIL},;

Nil})
aAdd(aAuto,{"E3_TIPO" ,"DH" ,Nil})
aAdd(aAuto,{"E3_

MOEDA

PEDIDO" ,"

01

654321" ,

NIL

Nil})
aAdd(aAuto,

;

{"E3_VENCTO" ,dDataBase

+4

,

NIL

Nil})
aAdd(aAuto,

;

{"E3_PROCCOM" ,"

TESTE INCLUSAO

ALTERACAO" ,

NIL}}
lMsErroAuto := .F.

Nil})
aAdd(aAuto,{"E3_MOEDA" ,"01" ,Nil})

MSExecAuto({|x,y|

mata490

Mata490(x,y)},

aVetor

aAuto,4) //

Alteracao
If lMsErroAuto
Alert("Erro

Alteração

")
MostraErro()
Endif


//***** Exemplo de Exclusão *****
SE3->(dbSetOrder(

1

3)) //E3_FILIAL+E3_VEND+E3_CODCLI+E3_LOJA+E3_PREFIXO+E3_NUM+E3_PARCELA
SE3->(dbSeek(xFilial("SE3")

+"1 "+"000000233

+SA3->A3_COD+SA1->A1_COD+SA1->A1_LOJA+"001"+"

A

123456789"+"1"+"

000002

DH"))

aVetor:={

aAdd(aAuto,{"E3_VEND" ,

"000002",NIL},;

SA3->A3_COD ,Nil})
aAdd(aAuto,{"E3_NUM" ,"

000000233

123456789" ,

NIL

Nil})
aAdd(aAuto,

;

{"E3_

EMISSAO

CODCLI" ,

dDataBase,NIL},;
{"E3_SERIE","1 ",NIL},;

SA1->A1_COD ,Nil})
aAdd(aAuto,{"E3_

CODCLI

LOJA" ,

"000005",NIL},;
{"E3

SA1->A1_LOJA

"

,

"16",NIL},;

Nil})
aAdd(aAuto,{"E3_PREFIXO" ,"

1

001" ,

NIL

Nil})
aAdd(aAuto,

;

{"E3_PARCELA" ,"

A

1" ,

NIL

Nil}

,;
{"E3_SEQ"," ",NIL},;

)
aAdd(aAuto,{"E3_

MOEDA

TIPO" ,"

01

DH" ,

NIL}}
lMsErroAuto := .F.

Nil})

MSExecAuto({|x,y|

mata490

Mata490(x,y)},

aVetor

aAuto,5) //

Exclusao

Exclusão


If lMsErroAuto

Alert

Conout("

Erro Exclusão

Ocorreu algum problema.")

MostraErro

MOSTRAERRO()

Endif

Else

Alert

Conout("

Teste MSEXECAUTO MATA490 finalizado..

Executado com sucesso.")
Endif

RESET ENVIRONMENT

Return Nil

Idioma:

Português (Brasil)

Versão:

Microsiga

_

Protheus11 e Microsiga Protheus12

Sistemas Operacionais Suportados:

Todos

Compatível com as Bases de Dados:

Todas

Programa Fonte:

MATA490.PRX