DescriçãoFunção utilizada para geração de orçamentos via rotina automática (ExecAuto).
Exemplos

 

    
 

 Function MyMata415()

 

Local aCabec := {}

 

Local aItens := {}

 

Local aLinha := {}

 

Local nX     := 0

 

Local nY     := 0

 

Local cDoc   := ""

 

Local lOk    := .T.

 

PRIVATE lMsErroAuto := .F.

 

//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿

 

//| Abertura do ambiente                                         |

 

//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ

 

ConOut(Repl("-",80))

 

ConOut(PadC("Teste de Inclusao de 10 orcamentos de venda  com 30 itens cada",80))

 

PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01" MODULO "FAT" TABLES "SC5","SC6","SA1","SA2","SB1","SB2","SF4","SCJ","SCK","SCL"

 

//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿

 

//| Verificacao do ambiente para teste                           |

 

//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ

 

dbSelectArea("SB1")

 

dbSetOrder(1)

 

If !SB1->(MsSeek(xFilial("SB1")+"PA001"))

 

    lOk := .F.

 

    ConOut("Cadastrar produto: PA001")

 

EndIf

 

dbSelectArea("SF4")

 

dbSetOrder(1)

 

If !SF4->(MsSeek(xFilial("SF4")+"501"))

 

    lOk := .F.

 

    ConOut("Cadastrar TES: 501")

 

EndIf

 

dbSelectArea("SE4")

 

dbSetOrder(1)

 

If !SE4->(MsSeek(xFilial("SE4")+"001"))

 

    lOk := .F.

 

    ConOut("Cadastrar condicao de pagamento: 001")

 

EndIf

 

If !SB1->(MsSeek(xFilial("SB1")+"PA002"))

 

    lOk := .F.

 

    ConOut("Cadastrar produto: PA002")

 

EndIf

 

dbSelectArea("SA1")

 

dbSetOrder(1)

 

If !SA1->(MsSeek(xFilial("SA1")+"CL000101"))

 

    lOk := .F.

 

    ConOut("Cadastrar cliente: CL000101")

 

EndIf

 

If lOk

 

    ConOut("Inicio: "+Time())

 

    For nY := 1 To 1

 

        cDoc := GetSxeNum("SCJ","CJ_NUM")

 

        RollBAckSx8()

 

        aCabec := {}

 

        aItens := {}

 

        aadd(aCabec,\{\"CJ_NUM"   ,cDoc,Nil\}\)

 

        aadd(aCabec,\{\"CJ_CLIENTE",SA1->A1_COD,Nil\}\)

 

        aadd(aCabec,\{\"CJ_LOJACLI",SA1->A1_LOJA,Nil\}\)

 

        aadd(aCabec,\{\"CJ_LOJAENT",SA1->A1_LOJA,Nil\}\)

 

        aadd(aCabec,\{\"CJ_CONDPAG",SE4->E4_CODIGO,Nil\}\)

 

        For nX := 1 To 1

 

            aLinha := {}

 

            aadd(aLinha,\{\"CK_ITEM",StrZero(nX,2),Nil\}\)

 

            aadd(aLinha,\{\"CK_PRODUTO",SB1->B1_COD,Nil\}\)

 

            aadd(aLinha,\{\"CK_QTDVEN",1,Nil\}\)

 

            aadd(aLinha,\{\"CK_PRCVEN",100,Nil\}\)

 

            aadd(aLinha,\{\"CK_PRUNIT",100,Nil\}\)           

 

            aadd(aLinha,\{\"CK_VALOR",100,Nil\}\)

 

            aadd(aLinha,\{\"CK_TES","501",Nil\}\)

 

            aadd(aItens,aLinha)

 

        Next nX

 

        //ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿

 

        //| Teste de Inclusao                                            |

 

        //ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ

 

        MATA415(aCabec,aItens,3)

 

        If !lMsErroAuto

 

            ConOut("Incluido com sucesso! "+cDoc)   

 

        Else

 

            ConOut("Erro na inclusao!")

 

        EndIf

 

    Next nY

 

    ConOut("Fim  : "+Time())

 

    //ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿

 

    //| Teste de alteracao                                           |

 

    //ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ

 

    aCabec := {}

 

    aItens := {}

 

    aadd(aCabec,\{\"CJ_NUM",cDoc,Nil\}\)

 

    aLinha := {}

 

    aadd(aLinha,\{\"LINPOS","CK_ITEM","01"\}\)

 

    aadd(aLinha,\{\"AUTDELETA","S",Nil\}\)

 

    aadd(aItens,aLinha)

 

    For nX := 2 To 2

 

        aLinha := {}

 

        aadd(aLinha,\{\"CK_ITEM",StrZero(nX,2),Nil\}\)

 

        aadd(aLinha,\{\"CK_PRODUTO",SB1->B1_COD,Nil\}\)

 

        aadd(aLinha,\{\"CK_QTDVEN",2,Nil\}\)

 

        aadd(aLinha,\{\"CK_PRCVEN",100,Nil\}\)

 

        aadd(aLinha,\{\"CK_PRUNIT",100,Nil\}\)           

 

        aadd(aLinha,\{\"CK_VALOR",200,Nil\}\)

 

        aadd(aLinha,\{\"CK_TES","501",Nil\}\)

 

        aadd(aItens,aLinha)

 

    Next nX   

 

    ConOut(PadC("Teste de alteracao",80))

 

    ConOut("Inicio: "+Time())

 

    MATA415(aCabec,aItens,4)

 

    ConOut("Fim  : "+Time())

 

    ConOut(Repl("-",80))

 

    //ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿

 

    //| Teste de Exclusao                                            |

 

    //ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ

 

    ConOut(PadC("Teste de exclusao",80))

 

    ConOut("Inicio: "+Time())

 

    MATA415(aCabec,aItens,5)

 

    If !lMsErroAuto

 

        ConOut("Exclusao com sucesso! "+cDoc)   

 

    Else

 

        ConOut("Erro na exclusao!")

 

    EndIf

 

    ConOut("Fim  : "+Time())

 

    ConOut(Repl("-",80))

 

EndIf

 

RESET ENVIRONMENT

 

Return

 

 

 

 

 

 

IdiomaPortuguês(Brasil)
VersõesMicrosiga Protheus 10 e Microsiga Protheus 11
Sistemas Operacionais SuportadosTodos
Compatível com as Bases de DadosTodas
Parâmetros

aAutocab - array contendo campos de cabeçalho

aAutoIte - array contendo campos de itens

nOpcAuto - 3- Incluir / 4- Alterar / 5- Excluir 

Programa FonteMATA415.PRX