Classe hbNFeCreator
Enviado: 10 Set 2011 21:52
Pessoal, deem uma olhada e comentem
Essa classe será para criar o XML atraves da programação sem ser por ini
da para compilar no harbour sem nada esse fonte apenas hbmk2 hbNFeCreator, este é apenas 1 exemplo
falta imbutir nela as regras de validação de alguns campos
[]s
Fernando
Essa classe será para criar o XML atraves da programação sem ser por ini
da para compilar no harbour sem nada esse fonte apenas hbmk2 hbNFeCreator, este é apenas 1 exemplo
falta imbutir nela as regras de validação de alguns campos
Código: Selecionar todos
#include "hbclass.ch"
#include "hbcompat.ch"
CREATE CLASS hbNFeCreator
DATA cChave AS STRING
DATA Ide EXPORTED
DATA Emi EXPORTED
DATA Dest EXPORTED
DATA Retirada EXPORTED
DATA Entrega EXPORTED
DATA Item EXPORTED
DATA Totais EXPORTED
DATA Transp EXPORTED
DATA Cobr EXPORTED
DATA InfAdic EXPORTED
DATA ObsCont EXPORTED
DATA ObsFisco EXPORTED
DATA ProcRef EXPORTED
DATA Exporta EXPORTED
DATA Compra EXPORTED
DATA nItens
DATA nDuplicatas
DATA nObscont
DATA nObsFisco
METHOD New() CONSTRUCTOR
METHOD AddItem()
METHOD getCurItem()
ENDCLASS
METHOD New() CLASS hbNFeCreator
::nItens := 0
::Ide := hbNFeCreatorIdentificacao():New()
::Emi := hbNFeCreatorEmitente():New()
::Dest := hbNFeCreatorDestinatario():New()
::Item := hash()
::Totais := hbNFeCreatorTotais():New()
::Transp := hbNFeCreatorTransp():New()
::Cobr := hbNFeCreatorCobranca():New()
::InfAdic := hbNFeCreatorInfAdic():New()
::ObsCont := hbNFeCreatorObsCont():New()
::ProcRef := hbNFeCreatorProcRef():New()
::Exporta := hbNFeCreatorExporta():New()
::Compra := hbNFeCreatorCompra():New()
RETURN Self
METHOD AddItem() CLASS hbNFeCreator
::nItens ++
::Item[::nItens] := hbNFeCreatorItem():New()
RETURN
METHOD getCurItem() CLASS hbNFeCreator
RETURN ::nItens
*
* CLASSE DA IDENTIFICACAO
*
CREATE CLASS hbNFeCreatorIdentificacao
DATA cUF
DATA cNF
DATA natOp
DATA indPag
DATA mod
DATA serie
DATA nNF
DATA dEmi
DATA dSaiEnt
DATA hSaiEnt
DATA tpNF
DATA cMunFG
DATA NFref EXPORTED
DATA tpImp
DATA tpEmis
DATA cDV
DATA tpAmb
DATA finNFe
DATA procEmi
DATA verProc
DATA dhCont
DATA xJust
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorIdentificacao
::cUF := Nil
::cNF := Nil
::natOp := Nil
::indPag := Nil
::mod := Nil
::serie := Nil
::nNF := Nil
::dEmi := CTOD('')
::dSaiEnt := CTOD('')
::hSaiEnt := Nil
::tpNF := Nil
::cMunFG := Nil
::NFref := hbNFeCreatorInfref():New()
::tpImp := Nil
::tpEmis := Nil
::cDV := Nil
::tpAmb := Nil
::finNFe := Nil
::procEmi := Nil
::verProc := "1.0.0"
::dhCont := Nil
::xJust := Nil
RETURN SELF
*
* CLASSE DA NF Ref.
*
CREATE CLASS hbNFeCreatorInfref
DATA refNFe
DATA refNF EXPORTED
DATA refNFP EXPORTED
DATA refECF EXPORTED
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorInfref
::refNFe := Nil
::refNF := hbNFeCreatorInfrefNF():New()
::refNFP := hbNFeCreatorInfrefNFP():New()
::refECF := hbNFeCreatorInfrefECF():New()
RETURN SELF
*
* CLASSE DA NF Ref. refNF
*
CREATE CLASS hbNFeCreatorInfrefNF
DATA cUF
DATA AAMM
DATA CNPJ
DATA mod
DATA serie
DATA nNF
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorInfrefNF
::cUF := Nil
::AAMM := Nil
::CNPJ := Nil
::mod := Nil
::serie := Nil
::nNF := Nil
RETURN SELF
*
* CLASSE DA NF Ref. refNFP
*
CREATE CLASS hbNFeCreatorInfrefNFP
DATA cUF
DATA AAMM
DATA CNPJ
DATA CPF
DATA IE
DATA mod
DATA serie
DATA nNF
DATA refCTe
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorInfrefNFP
::cUF := Nil
::AAMM := Nil
::CNPJ := Nil
::CPF := Nil
::IE := Nil
::mod := Nil
::serie := Nil
::nNF := Nil
::refCTe := Nil
RETURN SELF
*
* CLASSE DA NF Ref. refECF
*
CREATE CLASS hbNFeCreatorInfrefECF
DATA mod
DATA nECF
DATA nCOO
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorInfrefECF
::mod := Nil
::nECF := Nil
::nCOO := Nil
RETURN SELF
*
* CLASSE DO EMISSOR
*
CREATE CLASS hbNFeCreatorEmitente
DATA CNPJ
DATA CPF
DATA xNome
DATA xFant
DATA xLgr
DATA nro
DATA xBairro
DATA cMun
DATA xMun
DATA UF
DATA CEP
DATA cPais
DATA xPais
DATA fone
DATA IE
DATA IEST
DATA IM
DATA CNAE
DATA CRT
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorEmitente
::CNPJ := Nil
::CPF := Nil
::xNome := Nil
::xFant := Nil
::xLgr := Nil
::nro := Nil
::xBairro := Nil
::cMun := Nil
::xMun := Nil
::UF := Nil
::CEP := Nil
::cPais := Nil
::xPais := Nil
::fone := Nil
::IE := Nil
::IEST := Nil
::IM := Nil
::CNAE := Nil
::CRT := Nil
RETURN SELF
*
* CLASSE DO DESTINATARIO
*
CREATE CLASS hbNFeCreatorDestinatario
DATA CNPJ
DATA CPF
DATA xNome
DATA xFant
DATA xLgr
DATA nro
DATA xCpl
DATA xBairro
DATA cMun
DATA xMun
DATA UF
DATA CEP
DATA cPais
DATA xPais
DATA fone
DATA IE
DATA ISUF
DATA email
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorDestinatario
::CNPJ := Nil
::CPF := Nil
::xNome := Nil
::xFant := Nil
::xLgr := Nil
::nro := Nil
::xCpl := Nil
::xBairro := Nil
::cMun := Nil
::xMun := Nil
::UF := Nil
::CEP := Nil
::cPais := Nil
::xPais := Nil
::fone := Nil
::IE := Nil
::ISUF := Nil
::email := Nil
RETURN SELF
*
* CLASSE DA RETIRADA
*
CREATE CLASS hbNFeCreatorRetirada
DATA CNPJ
DATA CPF
DATA xNome
DATA xLgr
DATA nro
DATA xCpl
DATA xBairro
DATA cMun
DATA xMun
DATA UF
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorRetirada
::CNPJ := Nil
::CPF := Nil
::xNome := Nil
::xLgr := Nil
::nro := Nil
::xCpl := Nil
::xBairro := Nil
::cMun := Nil
::xMun := Nil
::UF := Nil
RETURN SELF
*
* CLASSE DA ENTREGA
*
CREATE CLASS hbNFeCreatorEntrega
DATA CNPJ
DATA CPF
DATA xNome
DATA xLgr
DATA nro
DATA xCpl
DATA xBairro
DATA cMun
DATA xMun
DATA UF
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorEntrega
::CNPJ := Nil
::CPF := Nil
::xNome := Nil
::xLgr := Nil
::nro := Nil
::xCpl := Nil
::xBairro := Nil
::cMun := Nil
::xMun := Nil
::UF := Nil
RETURN SELF
*
* CLASSE DO ITEM
*
CREATE CLASS hbNFeCreatorItem
DATA cProd
DATA cEAN
DATA xProd
DATA NCM
DATA EXTIPI
DATA CFOP
DATA uCom
DATA qCom
DATA vUnCom
DATA vProd
DATA cEANTrib
DATA uTrib
DATA qTrib
DATA vUnTrib
DATA vFrete
DATA vSeg
DATA vDesc
DATA vOutro
DATA indTot
DATA ItemICMS
DATA ItemIPI
DATA ItemII
DATA ItemPIS
DATA ItemPISST
DATA ItemCOFINS
DATA ItemCOFINSST
DATA nItensDI
DATA ItemDI EXPORTED
METHOD New() CONSTRUCTOR
METHOD AddDI()
METHOD getCurDI()
ENDCLASS
METHOD New() CLASS hbNFeCreatorItem
::cProd := Nil
::cEAN := Nil
::xProd := Nil
::NCM := Nil
::EXTIPI := Nil
::CFOP := Nil
::uCom := Nil
::qCom := Nil
::vUnCom := Nil
::vProd := Nil
::cEANTrib := Nil
::uTrib := Nil
::qTrib := Nil
::vUnTrib := Nil
::vFrete := Nil
::vSeg := Nil
::vDesc := Nil
::vOutro := Nil
::indTot := Nil
::ItemICMS := hbNFeCreatorItemICMS():New()
::ItemIPI := hbNFeCreatorItemIPI():New()
::ItemII := hbNFeCreatorItemII():New()
::ItemPIS := hbNFeCreatorItemPIS():New()
::ItemPISST := hbNFeCreatorItemPISST():New()
::ItemCOFINS := hbNFeCreatorItemCOFINS():New()
::ItemCOFINSST := hbNFeCreatorItemCOFINSST():New()
::ItemDI := hash()
::nItensDI := 0
RETURN SELF
METHOD AddDI() CLASS hbNFeCreatorItem
::nItensDI ++
::ItemDI[::nItensDI] := hbNFeCreatorItemDI():New()
RETURN
METHOD getCurDI() CLASS hbNFeCreatorItem
RETURN ::nItensDI
*
* CLASSE DO ITEM ICMS
*
CREATE CLASS hbNFeCreatorItemICMS
DATA orig
DATA CST
DATA CSOSN
DATA modBC
DATA pRedBC
DATA vBC
DATA pICMS
DATA vICMS
DATA modBCST
DATA pMVAST
DATA pRedBCST
DATA vBCST
DATA pICMSST
DATA vICMSST
DATA cUFST
DATA pBCOp
DATA vBCSTRet
DATA vICMSSTRet
DATA motDesICMS
DATA pCredSN
DATA vCredSN
DATA vBCSTDest
DATA vICMSSTDest
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorItemICMS
::orig := Nil
::CST := Nil
::CSOSN := Nil
::modBC := Nil
::pRedBC := Nil
::vBC := Nil
::pICMS := Nil
::vICMS := Nil
::modBCST := Nil
::pMVAST := Nil
::pRedBCST := Nil
::vBCST := Nil
::pICMSST := Nil
::vICMSST := Nil
::cUFST := Nil
::pBCOp := Nil
::vBCSTRet := Nil
::vICMSSTRet := Nil
::motDesICMS := Nil
::pCredSN := Nil
::vCredSN := Nil
::vBCSTDest := Nil
::vICMSSTDest := Nil
RETURN Self
*
* CLASSE DO ITEM IPI
*
CREATE CLASS hbNFeCreatorItemIPI
DATA clEnq
DATA CNPJProd
DATA cSelo
DATA qSelo
DATA cEnq
DATA CST
DATA vBC
DATA pIPI
DATA qUnid
DATA nUnid
DATA vIPI
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorItemIPI
::clEnq := Nil
::CNPJProd := Nil
::cSelo := Nil
::qSelo := Nil
::cEnq := Nil
::CST := Nil
::vBC := Nil
::pIPI := Nil
::qUnid := Nil
::nUnid := Nil
::vIPI := Nil
RETURN Self
*
* CLASSE DO ITEM II
*
CREATE CLASS hbNFeCreatorItemII
DATA vBC
DATA vDespAdu
DATA vII
DATA vIOF
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorItemII
::vBC := Nil
::vDespAdu := Nil
::vII := Nil
::vIOF := Nil
RETURN Self
*
* CLASSE DO ITEM PIS
*
CREATE CLASS hbNFeCreatorItemPIS
DATA CST
DATA vBC
DATA pPIS
DATA vPIS
DATA vBCProd
DATA nAliqProd
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorItemPIS
::CST := Nil
::vBC := Nil
::pPIS := Nil
::vPIS := Nil
::vBCProd := Nil
::nAliqProd := Nil
RETURN Self
*
* CLASSE DO ITEM PISST
*
CREATE CLASS hbNFeCreatorItemPISST
DATA vBC
DATA pPIS
DATA vBCProd
DATA vAliqProd
DATA vPIS
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorItemPISST
::vBC := Nil
::pPIS := Nil
::vBCProd := Nil
::vAliqProd := Nil
::vPIS := Nil
RETURN Self
*
* CLASSE DO ITEM COFINS
*
CREATE CLASS hbNFeCreatorItemCOFINS
DATA CST
DATA vBC
DATA pCOFINS
DATA vCOFINS
DATA vBCProd
DATA nAliqProd
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorItemCOFINS
::CST := Nil
::vBC := Nil
::pCOFINS := Nil
::vCOFINS := Nil
::vBCProd := Nil
::nAliqProd := Nil
RETURN Self
*
* CLASSE DO ITEM COFINSST
*
CREATE CLASS hbNFeCreatorItemCOFINSST
DATA vBC
DATA pCOFINS
DATA vBCProd
DATA vAliqProd
DATA vCOFINS
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorItemCOFINSST
::vBC := Nil
::pCOFINS := Nil
::vBCProd := Nil
::vAliqProd := Nil
::vCOFINS := Nil
RETURN Self
*
* CLASSE DO ITEM DI
*
CREATE CLASS hbNFeCreatorItemDI
DATA nDI
DATA dDI
DATA xLocDesemb
DATA UFDesemb
DATA dDesemb
DATA cExportador
DATA ItemADI
DATA nItensADI
METHOD New() CONSTRUCTOR
METHOD AddADI()
METHOD getCurADI()
ENDCLASS
METHOD AddADI() CLASS hbNFeCreatorItemDI
::nItensADI ++
::ItemADI[::nItensADI] := hbNFeCreatorItemADI():New()
RETURN
METHOD getCurADI() CLASS hbNFeCreatorItemDI
RETURN ::nItensADI
METHOD New() Class hbNFeCreatorItemDI
::nDI := Nil
::dDI := CTOD('')
::xLocDesemb := Nil
::UFDesemb := Nil
::dDesemb := CTOD('')
::cExportador := Nil
::ItemADI := hash()
::nItensADI := 0
RETURN SELF
*
* CLASSE DO ITEM ADICAO
*
CREATE CLASS hbNFeCreatorItemADI
DATA nAdicao
DATA nSeqAdic
DATA cFabricante
DATA nValorDesc
DATA cPedidoCompra
DATA nItemPedidoCompra
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() Class hbNFeCreatorItemADI
::nAdicao := Nil
::nSeqAdic := Nil
::cFabricante := Nil
::nValorDesc := Nil
::cPedidoCompra := Nil
::nItemPedidoCompra := Nil
RETURN SELF
*
* CLASSE DOS TOTAIS
*
CREATE CLASS hbNFeCreatorTotais
DATA ICMS EXPORTED
DATA retTrib EXPORTED
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorTotais
::ICMS := hbNFeCreatorTotaisICMS():New()
::retTrib := hbNFeCreatorTotaisICMS():New()
RETURN Self
*
* CLASSE DOS TOTAIS ICMS
*
CREATE CLASS hbNFeCreatorTotaisICMS
DATA vBC
DATA vICMS
DATA vBCST
DATA vST
DATA vProd
DATA vFrete
DATA vSeg
DATA vDesc
DATA vII
DATA vIPI
DATA vPIS
DATA vCOFINS
DATA vOutro
DATA vNF
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorTotaisICMS
::vBC := Nil
::vICMS := Nil
::vBCST := Nil
::vST := Nil
::vProd := Nil
::vFrete := Nil
::vSeg := Nil
::vDesc := Nil
::vII := Nil
::vIPI := Nil
::vPIS := Nil
::vCOFINS := Nil
::vOutro := Nil
::vNF := Nil
RETURN Self
*
* CLASSE DOS TOTAIS RETENCOES
*
CREATE CLASS hbNFeCreatorTotaisRetTrib
DATA vRetPIS
DATA vRetCOFINS
DATA vRetCSLL
DATA vBCIRRF
DATA vIRRF
DATA vBCRetPrev
DATA vRetPrev
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorTotaisRetTrib
::vRetPIS := Nil
::vRetCOFINS := Nil
::vRetCSLL := Nil
::vBCIRRF := Nil
::vIRRF := Nil
::vBCRetPrev := Nil
::vRetPrev := Nil
RETURN Self
*
* CLASSE DO TRANSPORTE
*
CREATE CLASS hbNFeCreatorTransp
DATA modFrete
DATA transporta EXPORTED
DATA retTransp EXPORTED
DATA veictransp EXPORTED
DATA vol EXPORTED
DATA lacres EXPORTED
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorTransp
::modFrete := '2'
::transporta := hbNFeCreatorTranspTransporta():New()
::retTransp := hbNFeCreatorTranspRetTransp():New()
::veictransp := hbNFeCreatorTranspVeic():New()
::vol := hbNFeCreatorTranspVol():New()
RETURN Self
*
* CLASSE DO TRANSPORTE (TRANPORTADOR)
*
CREATE CLASS hbNFeCreatorTranspTransporta
DATA CNPJ
DATA CPF
DATA xNome
DATA IE
DATA xEnder
DATA xMun
DATA UF
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorTranspTransporta
::CNPJ := Nil
::CPF := Nil
::xNome := Nil
::IE := Nil
::xEnder := Nil
::xMun := Nil
::UF := Nil
RETURN Self
*
* CLASSE DO TRANSPORTE (RETENCAO)
*
CREATE CLASS hbNFeCreatorTranspRetTransp
DATA vServ
DATA vBCRet
DATA pICMSRet
DATA vICMSRet
DATA CFOP
DATA cMunFG
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorTranspRetTransp
::vServ := Nil
::vBCRet := Nil
::pICMSRet := Nil
::vICMSRet := Nil
::CFOP := Nil
::cMunFG := Nil
RETURN Self
*
* CLASSE DO TRANSPORTE (VEICULO)
*
CREATE CLASS hbNFeCreatorTranspVeic
DATA placa
DATA UF
DATA RNTC
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorTranspVeic
::placa := Nil
::UF := Nil
::RNTC := Nil
RETURN Self
*
* CLASSE DO TRANSPORTE (VOLUMES)
*
CREATE CLASS hbNFeCreatorTranspVol
DATA qVol
DATA esp
DATA marca
DATA nVol
DATA pesoL
DATA pesoB
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorTranspVol
::qVol := Nil
::esp := Nil
::marca := Nil
::nVol := Nil
::pesoL := Nil
::pesoB := Nil
RETURN Self
*
* CLASSE DA COBRANCA
*
CREATE CLASS hbNFeCreatorCobranca
DATA fat EXPORTED
DATA nItensDup
DATA ItemDup
METHOD New() CONSTRUCTOR
METHOD AddDup()
METHOD getCurDup()
ENDCLASS
METHOD New() CLASS hbNFeCreatorCobranca
::fat := hbNFeCreatorCobrancaFatura():New()
::ItemDup := hash()
::nItensDup := 0
RETURN Self
METHOD AddDup() CLASS hbNFeCreatorCobranca
::nItensDup ++
::ItemDup[::nItensDup] := hbNFeCreatorCobrancaDup():New()
RETURN
METHOD getCurDup() CLASS hbNFeCreatorCobranca
RETURN ::nItensDup
*
* CLASSE DA COBRANCA (FATURA)
*
CREATE CLASS hbNFeCreatorCobrancaFatura
DATA nFat
DATA vOrig
DATA vDesc
DATA vLiq
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorCobrancaFatura
::nFat := Nil
::vOrig := Nil
::vDesc := Nil
::vLiq := Nil
RETURN Self
*
* CLASSE DA COBRANCA (DUP)
*
CREATE CLASS hbNFeCreatorCobrancaDup
DATA nDup
DATA dVenc
DATA vDup
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorCobrancaDup
::nDup := Nil
::dVenc := CTOD('')
::vDup := Nil
RETURN Self
*
* CLASSE DA INFADIC
*
CREATE CLASS hbNFeCreatorInfAdic
DATA infAdFisco
DATA infCpl
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorInfAdic
::infAdFisco := Nil
::infCpl := Nil
RETURN Self
*
* CLASSE DA OBSCONT
*
CREATE CLASS hbNFeCreatorObsCont
DATA nItensObs
DATA ItemObs
METHOD New() CONSTRUCTOR
METHOD AddObs()
METHOD getCurObs()
ENDCLASS
METHOD New() CLASS hbNFeCreatorObsCont
::ItemObs := hash()
::nItensObs := 0
RETURN Self
METHOD AddObs() CLASS hbNFeCreatorObsCont
::nItensObs ++
::ItemObs[::nItensObs] := hbNFeCreatorObsContItens():New()
RETURN
METHOD getCurObs() CLASS hbNFeCreatorObsCont
RETURN ::nItensObs
CREATE CLASS hbNFeCreatorObsContItens
DATA xCampo
DATA xTexto
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorObsContItens
::xCampo := Nil
::xTexto := Nil
RETURN Self
*
* CLASSE DA PROCREF
*
CREATE CLASS hbNFeCreatorProcRef
DATA nProc
DATA indProc
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorProcRef
::nProc := Nil
::indProc := Nil
RETURN Self
*
* CLASSE DA EXPORTA
*
CREATE CLASS hbNFeCreatorExporta
DATA UFEmbarq
DATA xLocEmbarq
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorExporta
::UFEmbarq := Nil
::xLocEmbarq := Nil
RETURN Self
*
* CLASSE DA COMPRA
*
CREATE CLASS hbNFeCreatorCompra
DATA xNEmp
DATA xPed
DATA xCont
METHOD New() CONSTRUCTOR
ENDCLASS
METHOD New() CLASS hbNFeCreatorCompra
::xNEmp := Nil
::xPed := Nil
::xCont := Nil
RETURN Self
*
** TESTE
*
FUNC MAIN()
oNF := hbNFeCreator():New()
oNF:cChave := "56677"
WITH OBJECT oNF:Ide
:cUF := 35
:cNF := 88
:natOp := 'VENDA'
:indPag := 0
:mod := 55
:serie := 1
:nNF := 88
:dEmi := CTOD('10/09/2011')
:dSaiEnt := CTOD('10/09/2011')
:hSaiEnt := TIME()
:tpNF := 35
:cMunFG := 355533
END WITH
WITH OBJECT oNF:Ide:NFref
:refNFe := '35823432498237943211239812903819028391283890'
WITH OBJECT oNF:Ide:NFref:refNF
:cUF := 35
:AAMM := '1109'
:CNPJ := '99.999.999/9999-99'
:mod := 55
:serie := 1
:nNF := 781326
END WITH
END WITH
WITH OBJECT oNF:Ide
:tpImp := 1
:tpEmis := 1
:cDV := 9
:tpAmb := 2
:finNFe := 1
END WITH
WITH OBJECT oNF:Emi
:CNPJ := '11.777.888/0001-99'
:xNome := 'EMPRESA TESTE LTDA ME'
:xFant := 'EMPRESA TESTE'
:xLgr := 'RUA DE TESTE'
:nro := '123'
:xBairro := 'BAIRRO TESTE'
:cMun := 2346234
:xMun := 'CIDADE DE TESTE'
:UF := 'SP'
:CEP := '19531-000'
:fone := '18 8888-9966'
:IE := '888.999.000-111'
:CNAE := 13981723
:CRT := 1
END WITH
WITH OBJECT oNF:Dest
:CNPJ := '22.777.888/0001-99'
:xNome := 'EMPRESA CLIENTE LTDA'
:xLgr := 'RUA DE CLIENTE'
:nro := '1234'
:xCpl := "COMPLEMENTO"
:xBairro := 'BAIRRO CLIENTE'
:cMun := 2346234
:xMun := 'CIDADE DE CLIENTE'
:UF := 'SP'
:CEP := '19531-000'
:fone := '18 8888-9966'
:IE := '888.999.000-111'
:email := 'cliente@provedor.com.br'
END WITH
oNF:AddItem()
WITH OBJECT oNF:Item[oNF:nItens]
:cProd := 1
:cEAN := ''
:xProd := 'PRODUTO 1'
:NCM := '28467328'
:CFOP := '5102'
:uCom := 'PC'
:qCom := 4.00
:vUnCom := 10.00
:vProd := 40.00
:vDesc := 10.00
:indTot := 0
WITH OBJECT :ItemICMS
:orig := '0'
:CSOSN := '500'
:modBC := 0
:vBC := 0
:pICMS := 0
:vICMS := 0
END WITH
WITH OBJECT :ItemIPI
:CST := '99'
:vBC := 0
:pIPI := 0
:vIPI := 0
END WITH
WITH OBJECT :ItemPIS
:CST := '09'
:vBC := 0
:pPIS := 0
:vPIS := 0
END WITH
WITH OBJECT :ItemCOFINS
:CST := '09'
:vBC := 0
:pCOFINS := 0
:vCOFINS := 0
END WITH
:AddDI()
WITH OBJECT :ItemDI[:nItensDI]
:nDI := '123'
:dDI := CTOD('01/09/2011')
:xLocDesemb := 'PARANAGUA'
:UFDesemb := 'PR'
:dDesemb := CTOD('01/08/2011')
:cExportador := 'RBL IMP AND EXP'
:AddADI()
WITH OBJECT :ItemADI[:nItensADI]
:nAdicao := '123456'
:nSeqAdic := 1234
:cFabricante := 'NATION BUILD'
END WITH
END WITH
END WITH
oNF:AddItem()
WITH OBJECT oNF:Item[oNF:nItens]
:cProd := 2
:cEAN := '7898791635123'
:xProd := 'PRODUTO 2'
:NCM := '99'
:CFOP := '5102'
:uCom := 'UN'
:qCom := 2.00
:vUnCom := 15.00
:vProd := 30.00
:vDesc := 5.00
:indTot := 0
WITH OBJECT :ItemICMS
:orig := '0'
:CSOSN := '101'
:modBC := 0
:vBC := 0
:pICMS := 0
:vICMS := 0
END WITH
WITH OBJECT :ItemIPI
:CST := '99'
:vBC := 0
:pIPI := 0
:vIPI := 0
END WITH
WITH OBJECT :ItemPIS
:CST := '09'
:vBC := 0
:pPIS := 0
:vPIS := 0
END WITH
WITH OBJECT :ItemCOFINS
:CST := '09'
:vBC := 0
:pCOFINS := 0
:vCOFINS := 0
END WITH
END WITH
WITH OBJECT oNF:Totais:ICMS
:vBC := 0
:vICMS := 0
:vBCST := 0
:vST := 0
:vProd := 70
:vFrete := 0
:vSeg := 0
:vDesc := 15
:vII := 0
:vIPI := 0
:vPIS := 0
:vCOFINS:= 0
:vOutro := 0
:vNF := 55
END WITH
WITH OBJECT oNF:transp
:modFrete := '1'
WITH OBJECT :transporta
:CPF := '777.666.555-44'
:xNome := 'TRANSPORTADOR'
:xEnder := 'ENDERECO TRANSPORTADOR'
:xMun := 'CIDADE TRANSPORTADOR'
:UF := 'SP'
END WITH
WITH OBJECT :veictransp
:placa := 'AAA-12345'
:UF := 'PR'
END WITH
WITH OBJECT :vol
:qVol := 2
:esp := 'CAIXA'
:marca := 'PROPRIA'
:pesoL := 10.500
:pesoB := 12.100
END WITH
END WITH
WITH OBJECT oNF:cobr
WITH OBJECT oNF:cobr:fat
:nFat := '134798'
:vOrig := 55
:vDesc := 0
:vLiq := 55
END WITH
:AddDup()
WITH OBJECT :ItemDup[:nItensDup]
:nDup := '1928'
:dVenc := CTOD('01/10/2011')
:vDup := 25.00
END WITH
:AddDup()
WITH OBJECT :ItemDup[:nItensDup]
:nDup := '098098'
:dVenc := CTOD('01/11/2011')
:vDup := 20.00
END WITH
END WITH
oNF:InfAdic:infCpl := 'kjh ahaJHDAhaDSHDAsd AD AHGD A'
WITH OBJECT oNF:ObsCont
:AddObs()
WITH OBJECT :ItemObs[:nItensObs]
:xCampo := 'aksjd hasd'
:xTexto := 'rrwer wer weriu wri'
END WITH
END WITH
* oNF:geraXML()
? "Chave :" + oNF:cChave
? "NF :" + STR( oNF:Ide:cNF )
? "Emitente :" + oNF:Emi:xNome
? "Dest :" + oNF:Dest:xNome
FOR nItem = 1 TO oNF:nItens
WITH OBJECT oNF:Item[nItem]
? "cProd :" + STR(:cProd)
? "xProd :" + :xProd
? "Origem :" + :ItemICMS:orig
FOR nItemDI = 1 TO :nItensDI
WITH OBJECT :ItemDI[nItemDI]
? "DI :" + :nDI
FOR nItemADI = 1 TO :nItensADI
WITH OBJECT :ItemADI[nItemADI]
? "Adicao :" + :nAdicao
END WITH
NEXT
END WITH
NEXT
END WITH
NEXT
? "vNF :" + STR(oNF:Totais:ICMS:vNF,20,2)
? "modFrete :" + oNF:transp:modFrete
? "CNPJ Tra :" + oNF:transp:transporta:CPF
? "Placa :" + oNF:transp:veictransp:placa
? "Qts Vol :" + STR(oNF:transp:vol:qVol)
? "Fat :" + oNF:cobr:fat:nFat
FOR nItemDup = 1 TO oNF:cobr:nItensDup
? "nDup :" + oNF:cobr:ItemDup[nItemDup]:nDup
NEXT
? "InfAdic :" + oNF:InfAdic:infCpl
FOR nItemDup = 1 TO oNF:Obscont:nItensObs
? "xCampo :" + oNF:Obscont:ItemObs[nItemDup]:xCampo
NEXT
oNF := Nil
RETURN
Fernando