Árvore de páginas

Versões comparadas

Chave

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

...

Bloco de código
languagepy
themeMidnight
titleInclusão Multipla
linenumberstrue
collapsetrue
#include "rwmake.ch"
#include "TOTVS.ch"
#include "TBICONN.ch"

User Function MyA012

  Local aArea
  Local cBase, cItem ,cGrupo, cChapa , cDescric:= " "
  Local cTipo := "13"
  Local cPatrim := "N"
  Local dIndDepr 
  Local cHistor := "TESTE EXEC"
  Local cContab := "PLANODECONTA00000000"

  Local cCusto := "CENTR0001"
  Local cSubCon :="000000001"
  Local cClvlCon:="000000000"

  Local nQtd := 1
  Local nValor := 10
  Local nTaxa := 1
  Local nTaxa2:= 1  

  Local nX
  Local aParam := {}
  Local aCab := {}
  Local aItens := {}
  Private lMsErroAuto := .F.
  Private lMsHelpAuto := .T.

  PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01 " MODULO "ATF" TABLES "SN1","SN3"
        
    /*lançamento para inclusao de mais Ativos 
    ----------------------------------------------*/
    For nX :=1 To 2

      aArea := GetArea()

      cBase   :=PadR("AG"+cValToChar(nX),TamSX3("A3_COD")[1])
      cItem   :=PadR("AG"+cValToChar(nX),TamSX3("N1_ITEM")[1],"")
      cChapa  :=PadR("AG"+cValToChar(nX),TamSX3("N1_CHAPA")[1])
      cDescric:=PadR("EXECAUT : "+ cValToChar(nX), TamSX3("N1_CHAPA")[1])
      dIndDepr := RetDinDepr(dDataBase)

      aCab := {}
      AAdd(aCab,{"N1_CBASE"   , cBase     ,NIL})
      AAdd(aCab,{"N1_ITEM"    , cItem     ,NIL})
      AAdd(aCab,{"N1_AQUISIC" , dDataBase ,NIL})
      AAdd(aCab,{"N1_DESCRIC" , cDescric  ,NIL})
      AAdd(aCab,{"N1_QUANTD"  , nQtd      ,NIL})
      AAdd(aCab,{"N1_CHAPA"   , cChapa    ,NIL})
      AAdd(aCab,{"N1_PATRIM"  , cPatrim   ,NIL})
      AAdd(aCab,{"N1_GRUPO"   , cGrupo    ,NIL})
      AAdd(aCab,{"N1_MARGEM"   ,"000000"  ,NIL})
      //adicione aqui os campos desejados
      
      aItens := {}
      //-- Preenche item 1
      AAdd(aItens,{;
                  {"N3_CBASE"   , cBase       ,NIL},;
                  {"N3_ITEM"    , cItem       ,NIL},;
                  {"N3_TIPO"    , cTipo       ,NIL},;
                  {"N3_BAIXA"   , "0"         ,NIL},;
                  {"N3_HISTOR"  , cHistor     ,NIL},;
                  {"N3_CCONTAB" , cContab     ,NIL},;
                  {"N3_CUSTBEM" , cCusto      ,NIL},;
                  {"N3_CDEPREC" , cContab     ,NIL},;
                  {"N3_CDESP"   , cContab     ,NIL},;
                  {"N3_CCORREC" , cContab     ,NIL},;
                  {"N3_CCUSTO"  , cCusto      ,NIL},;
                  {"N3_DINDEPR" , dIndDepr    ,NIL},;
                  {"N3_VORIG1"  , nValor      ,NIL},;
                  {"N3_TXDEPR1" , nTaxa       ,NIL},;
                  {"N3_VORIG2"  , nValor      ,NIL},;
                  {"N3_TXDEPR2" , nTaxa       ,NIL},;
                  {"N3_VORIG3"  , nValor      ,NIL},;
                  {"N3_TXDEPR3" , nTaxa       ,NIL},;
                  {"N3_VORIG4"  , nValor      ,NIL},;
                  {"N3_TXDEPR4" , nTaxa       ,NIL},;
                  {"N3_VORIG5"  , nValor      ,NIL},;
                  {"N3_TXDEPR5" , nTaxa       ,NIL},;
                  {"N3_VRDACM1" , nTaxa2      ,NIL},;
                  {"N3_SUBCCON" , cSubCon     ,NIL},;
                  {"N3_CLVLCON" , cClvlCon    ,NIL};
                  })
                  //adicione acima os campos desejados

      //Controle de transacao
      Begin Transaction

        conOut('Inicio da rotina Automatica '+ Time())
        MSExecAuto({|x,y,z| Atfa012(x,y,z)},aCab,aItens,3,aParam)
        conOut('FIM' +Time())

        If lMsErroAuto 
             MostraErro()
             DisarmTransaction()
        else
          ConfirmSx8()
          conOut('INCLUIDO ATIVO N3_CBASE: '+ cBase + ", N3_ITEM : "+cItem+ ", N3_CUSTBEM : "+cCusto+ ", N3_SUBCCON : "+cSubCon+ ", N3_CLVLCON : "+cClvlCon)
        ENDIF    

        RestArea(aArea)
      End Transaction

      //Modificando campos para segunda execução
      cCusto  :="CENTR0002"
      cSubCon :="000000002"
      cClvlCon:="000000002"
      
    Next nX

  RESET ENVIRONMENT

Return



Informações
titleObservação


Nos casos em que ocorram mais de uma linha na tabela SN3, é obrigatório a passagem do campo N3_SEQ ( Conforme exemplo acima ). 



Bloco de código
languagepy
themeMidnight
titleAlteração
linenumberstrue
collapsetrue
#INCLUDE "Protheus.CH"

User Function AltAtfa012()

	Local aArea := GetArea()
	Local nQtd := 1
	Local dAquisic := dDataBase
	Local dIndDepr := RetDinDepr(dDataBase)
	Local nQtd := 2
	Local nValor := 1000
	Local nTaxa := 10
	Local nTamBase := TamSX3("N3_CBASE")[1]
	Local nTamChapa := TamSX3("N3_CBASE")[1]
	Local cGrupo := "0001"
	Local aParam := {}

	Local aCab := {}
	Local aItens := {}

	Private lMsErroAuto := .F.
	Private lMsHelpAuto := .T.

	 
	SN1->(DbSetOrder(1)) //N1_FILIAL+N1_CBASE+N1_ITEM
	If SN1->(DbSeek(xFilial("SN1")+"0000000000"+"0001"))

		aCab := {}
		AAdd(aCab,{"N1_CBASE" , SN1->N1_CBASE ,NIL})
		AAdd(aCab,{"N1_ITEM" , SN1->N1_ITEM ,NIL})
		AAdd(aCab,{"N1_AQUISIC", SN1->N1_AQUISIC ,NIL})
		AAdd(aCab,{"N1_DESCRIC", "TESTE MYAATF012 2" ,NIL})
		AAdd(aCab,{"N1_QUANTD" , SN1->N1_QUANTD ,NIL})
		AAdd(aCab,{"N1_CHAPA" , SN1->N1_CHAPA ,NIL})
		AAdd(aCab,{"N1_PATRIM" , SN1->N1_PATRIM ,NIL})
		AAdd(aCab,{"N1_GRUPO" , SN1->N1_GRUPO ,NIL})

		aItens := {}
		//-- Preenche itens
		SN3->(DbSetOrder(1))//N3_FILIAL+N3_CBASE+N3_ITEM+N3_TIPO+N3_BAIXA+N3_SEQ
		If SN3->(DbSeek(xFilial("SN3")+"0000000000"+"0001"+"01"+"0"+"001"))

		AAdd(aItens,{;
		{"N3_CBASE" , SN3->N3_CBASE ,NIL},;
		{"N3_ITEM" , SN3->N3_ITEM ,NIL},;
		{"N3_TIPO" , SN3->N3_TIPO ,NIL},;
		{"N3_BAIXA" , SN3->N3_BAIXA ,NIL},;
		{"N3_HISTOR" , "TESTE MYAATF012 2" ,NIL},;
		{"N3_CCONTAB" , SN3->N3_CCONTAB ,NIL},;
		{"N3_CUSTBEM" , SN3->N3_CUSTBEM ,NIL},;
		{"N3_CDEPREC" , SN3->N3_CDEPREC ,NIL},;
		{"N3_CDESP" , SN3->N3_CDESP ,NIL},;
		{"N3_CCORREC" , SN3->N3_CCORREC ,NIL},;
		{"N3_CCUSTO" , SN3->N3_CCUSTO ,NIL},;
		{"N3_DINDEPR" , SN3->N3_DINDEPR ,NIL},;
		{"N3_VORIG1" , SN3->N3_VORIG1 ,NIL},;
		{"N3_TXDEPR1" , SN3->N3_TXDEPR1 ,NIL},;
		{"N3_VORIG2" , SN3->N3_VORIG2 ,NIL},;
		{"N3_TXDEPR2" , SN3->N3_TXDEPR2 ,NIL},;
		{"N3_VORIG3" , SN3->N3_VORIG3 ,NIL},;
		{"N3_TXDEPR3" , SN3->N3_TXDEPR3 ,NIL},;
		{"N3_VORIG4" , SN3->N3_VORIG4 ,NIL},;
		{"N3_TXDEPR4" , SN3->N3_TXDEPR4 ,NIL},;
		{"N3_VORIG5" , SN3->N3_VORIG5 ,NIL},;
		{"N3_SEQ" , SN3->N3_SEQ ,NIL},;
		{"N3_TXDEPR5" , SN3->N3_TXDEPR5 ,NIL}})

		EndIf

		Begin Transaction

			MSExecAuto({|x,y,z| Atfa012(x,y,z)},aCab,aItens,4,aParam)

			If lMsErroAuto
				MostraErro()
				DisarmTransaction()
			Endif

		End Transaction
	EndIf

	RestArea(aArea)
Return




Bloco de código
languagepy
themeMidnight
titleExclusão
linenumberstrue
collapsetrue
#INCLUDE "Protheus.CH"

User Function Exc012

	Local aArea := GetArea()
	Local nQtd := 1
	Local dAquisic := dDataBase
	Local dIndDepr := RetDinDepr(dDataBase)
	Local nQtd := 2
	Local nValor := 1000
	Local nTaxa := 10
	Local nTamBase := TamSX3("N3_CBASE")[1]
	Local nTamChapa := TamSX3("N3_CBASE")[1]
	Local cGrupo := "0001"
	Local aParam := {}

	Local aCab := {}
	Local aItens := {}

	Private lMsErroAuto := .F.
	Private lMsHelpAuto := .T.

	SN1->(DbSetOrder(1)) //N1_FILIAL+N1_CBASE+N1_ITEM
	If SN1->(DbSeek(xFilial("SN1")+"0000000000"+"0001")) 

        aCab := {}
        AAdd(aCab,{"N1_CBASE" , SN1->N1_CBASE ,NIL})
        AAdd(aCab,{"N1_ITEM" , SN1->N1_ITEM ,NIL})
        AAdd(aCab,{"N1_AQUISIC", SN1->N1_AQUISIC ,NIL})
        AAdd(aCab,{"N1_DESCRIC", "TESTE MYAATF012" ,NIL})
        AAdd(aCab,{"N1_QUANTD" , SN1->N1_QUANTD ,NIL})
        AAdd(aCab,{"N1_CHAPA" , SN1->N1_CHAPA ,NIL})
        AAdd(aCab,{"N1_PATRIM" , SN1->N1_PATRIM ,NIL})
        AAdd(aCab,{"N1_GRUPO" , SN1->N1_GRUPO ,NIL})

	EndIf

	Begin Transaction

        MSExecAuto({|x,y,z| Atfa012(x,y,z)},aCab,Nil,5,aParam)

        If lMsErroAuto

            MostraErro()
            DisarmTransaction()

        Endif

	End Transaction

	RestArea(aArea)

Return 

03. TELA XXXXX

Outras Ações / Ações relacionadas

...