Árvore de páginas

Versões comparadas

Chave

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

...

Bloco de código
titlePECOMPCON
linenumberstrue
#include 'protheus.ch'
#INCLUDE "FWMVCDEF.CH"
#include "FILEIO.CH"

User Function PECOMPCON()
	Local cXMLCon   := ""
	Local cCRLF  := (chr(13)+chr(10))
	Local cOpc   := PARAMIXB[1] //Opión donde IA - Información Aduanera, CP - Cuenta Predial
	Local lCadO  := PARAMIXB[2] //Indica si es Cadena Origian .T. = Si y .F. = No
	Local cSepa  := "|"
	Local cNPed  := "23  47  3807  8003832"
	Local cCtaP  := "15956011002"
	Local cBaseI := "0.01"
	Local cImpto := "002"
	Local cTipoF := "Tasa"
	Local cTsaC  := "0.000000"
	Local cImpI  := "0.00"

	If Alltrim(cEspecie) == "NF"
		If lCadO
			If cOpc == "IA" //Información Aduanera
				cXMLCon := StrTran(cNPed,"  "," ") + cSepa
			ElseIf cOpc == "CP" //Cuenta Predial
				cXMLCon := cCtaP + cSepa
			ElseIf cOpc == "IT" //Impuestos por ítem por PE (Traslado)
				cXMLCon := cBaseI + cSepa + cImpto + cSepa + cTipoF + cSepa + cTsaC + cSepa + cImpI + cSepa
			EndIf
		Else
			If cOpc == "IA" //Información Aduanera
				cXMLCon := Space(12) + '<cfdi:InformacionAduanera NumeroPedimento="' + cNPed + '"/>' + cCRLF
			ElseIf cOpc == "CP" //Cuenta Predial
				cXMLCon := Space(12) + '<cfdi:CuentaPredial Numero="' + cCtaP + '"/>' + cCRLF
			ElseIf	If Alltrim(cEspecie) $ "NF|NCC"
		If lCadO
			If cOpc == "STIA" //SubTotalInformación Aduanera
				cXMLCon := Space(1) + 'SubTotal="' + cSubT + '"'StrTran(cNPed,"  "," ") + cSepa
			ElseIf cOpc == "TCP" //TotalCuenta Predial
				cXMLCon := Space(1) + 'Total="' + cTot + '"'cCtaP + cSepa
			EndIf
		Else
			ElseIfIf cOpc == "ITIA" //Impuestos por ítem por PE (Traslado)Información Aduanera
				cXMLCon +:= Space(2012) + '<cfdi:TrasladoInformacionAduanera BaseNumeroPedimento="' + cBaseIcNPed + '" Impuesto="/>' + cImpto + '" TipoFactor="' + cTipoF + '" TasaOCuota="' + cTsaC + '" ImportecCRLF
			ElseIf cOpc == "CP" //Cuenta Predial
				cXMLCon := Space(12) + '<cfdi:CuentaPredial Numero="' + cImpIcCtaP + '"/>' + cCRLF
			EndIf
		EndIf
	EndIf
Return cXMLCon
Bloco de código
titlePEXMLDOC
linenumberstrue
#include 'protheus.ch'
#INCLUDE "FWMVCDEF.CH"
#include "FILEIO.CH"

User Function PEXMLDOC()
	Local cOpc    := PARAMIXB[1] //Opión donde IA - Información Aduanera, CP - Cuenta Predial
	Local lCadO   := PARAMIXB[2] //Indica si es Cadena Origian .T. = Si y .F. = No
	Local cXMLRet := ""
	Local cSepa   := "|"
	Local cSubT   := "0.01"
	Local cTot    := "0.01"
	Local cCRLF   := (chr(13)+chr(10))

	//Datos Impuestos Totales
	Local cTotIT := "0.00"
	Local cBasIT := "0.01"
	Local cImpT  := "002"
	Local cTpFac := "Tasa"
	Local cTasCuo := "0.000000"
	Local cValor  := "0.00"

	If Alltrim(cEspecie) == "NF"
		If lCadO
			If cOpc == "ST" //SubTotal
				cXMLRet := cSubT + cSepa
			ElseIf$ "NF|NCC"
		If cOpc == "TST" //TotalSubTotal
				cXMLRet := cTot + cSepacSubT
			ElseIf cOpc == "TIT" //Total de Impuestos
				cXMLRet := cBasIT + cSepa + cImpT + cSepa + cTpFac + cSepa + cTasCuo + cSepa + cValor + cSepa + cTotIT + cSepa
			EndIf
		ElsecTot
		ElseIf cOpc == "D" //Total
			cXMLRet := "20.00"
		EndIf

		If lCadO
			If cOpc == "STTI" //SubTotalTotal de Impuestos
				cXMLRet := Space(1) cBasIT + cSepa + 'SubTotal="'cImpT + cSubTcSepa + '"'
			ElseIf cOpc == "T" //Total
				cXMLRet := Space(1) + 'Total="' + cTot + '"'
			ElseIf cTpFac + cSepa + cTasCuo + cSepa + cValor + cSepa + cTotIT + cSepa
			EndIf
		Else
			If cOpc == "TI" ////Total de Impuestos
				cXMLRet := cCRLF + Space(5) + '<cfdi:Impuestos TotalImpuestosTrasladados="' + cTotIT + '" >' + cCRLF
				cXMLRet += Space(10) + '<cfdi:Traslados>' + cCRLF
				cXMLRet += Space(15) + '<cfdi:Traslado Base="' + cBasIT + '" Impuesto="' + cImpT + '" TipoFactor="' + cTpFac + '" TasaOCuota="' + cTasCuo + '" Importe="' + cValor + '"/>' + cCRLF
				cXMLRet += Space(10) + '</cfdi:Traslados>' + cCRLF
    			cXMLRet += Space(5) + '</cfdi:Impuestos>' + cCRLF
			EndIf
		EndIf
	EndIf
Return cXMLRet
Bloco de código
titleLOCXCONCEP
linenumberstrue
#include 'protheus.ch'
#INCLUDE "FWMVCDEF.CH"
#include "FILEIO.CH"  

User function LOCXCONCEP()
	Local cArea := GetArea()
	Local aDetFac := {"","",0,"","","","","",""} // Arreglo que contiene la información del producto.
	/*
	aDetFac[1] := ClaveProdSer
	aDetFac[2] := No. Identificación
	aDetFac[3] := Cantidad
	aDetFac[4] := ClaveUnidad
	aDetFac[5] := Unidad
	aDetFac[6] := Descripcion
	aDetFac[7] := ValorUnitario
	aDetFac[8] := Importe
	aDetFac[9] := Descuento
	*/

	If Alltrim(cEspecie) ==$ "NF|NCC"
		aDetFac[7] := "0.01"
		aDetFac[8] := "0.01"
		aDetFac[9] := "0.00"
	EndIf

	RestArea(cArea)
Return aDetFac
Bloco de código
titlePEDETIMP
linenumberstrue
#include 'protheus.ch'
#INCLUDE "FWMVCDEF.CH"
#include "FILEIO.CH"

User Function PEDETIMP()
	Local cOpc   := PARAMIXB[1] //Opión donde IA - Información Aduanera, CP - Cuenta Predial
	Local lCadO  := PARAMIXB[2] //Indica si es Cadena Origian .T. = Si y .F. = No
	Local cProd  := PARAMIXB[3] //Código del Producto
	Local cItem  := PARAMIXB[4] //Número de ítem
	Local aImpDet := {}
	Local cRetImp := ""
	Local cBaseI := "0.01"
	Local cImpto := "002"
	Local cTipoF := "Tasa"
	Local cTsaC  := "0.000000"
	Local cImpI  := "0.00"
	Local cCRLF  := (chr(13)+chr(10))
	Local cSepa  := "|"

	If Alltrim(cEspecie) $ "NF|NCC"
		If lCadO 
			If cOpc == "IT"
				cRetImp := cBaseI + cSepa + cImpto + cSepa + cTipoF + cSepa + cTsaC + cSepa + cImpI + cSepa
			EndIf
		Else
			If cOpc == "IT"
				cRetImp := Space(20) + '<cfdi:Traslado Base="' + cBaseI + '" Impuesto="' + cImpto + '" TipoFactor="' + cTipoF + '" TasaOCuota="' + cTsaC + '" Importe="' + cImpI + '"/>' + cCRLF
			EndIf
		EndIf
		aAdd(aImpDet, cRetImp)
	EndIf
Return aImpDet

...