Árvore de páginas

Versões comparadas

Chave

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

...

Informações
titleFATSCOL.INI

//FATSCOL.INI -- NFE Colombia v2 - Resolucion 0019 / FEB. 2016
[XXX POSICIONAMENTOS]
(PRE) SA2->(DbSetOrder(1))
(PRE) _aTotal[116] := If(SF2->(ColumnPos("F2_MARK")) > 0 ,If(SF2->F2_MARK=='S'.AND. Alltrim(SF2->F2_TIPOPE) $'10|11', .T.,.F. ) , .F.)
(PRE) If(_aTotal[116] ,SA2->(MSSeek(xFilial("SA2")+SF2->F2_CLIENTE+SF2->F2_LOJA)) , .T.)
(PRE) If(_aTotal[116] ,SA1->(MSSeek(xFilial("SA1")+SA2->A2_CLIENTE+SA2->A2_LOJCLI)) , .T.)
(PRE) If(AllTrim(SF2->F2_ESPECIE)=="NDI",SA2->(MSSeek(xFilial("SA2")+SF2->F2_CLIENTE+SF2->F2_LOJA)) , .T.)
(PRE) If(AllTrim(SF2->F2_ESPECIE)<>"NDI" .AND. !_aTotal[116] ,SA1->(MSSeek(xFilial("SA1")+SF2->F2_CLIENTE+SF2->F2_LOJA)) , .T.)
(PRE) (SE4->(MSSeek(xFilial("SE4")+SF2->F2_COND)) , .T.)
(PRE) ( If(!_aTotal[116],AI0->(MSSeek(xFilial("AI0")+SF2->F2_CLIENTE+SF2->F2_LOJA)), AI0->(MSSeek(xFilial("AI0")+SA2->(A2_CLIENTE+A2_LOJCLI)))), .T.)

[XXX INICIALIZACION]
(PRE) SD2->(DbSetOrder(1))
(PRE) SB1->(DbSetOrder(1))
(PRE) SYA->(DbSetOrder(1))
(PRE) SC6->(DbSetOrder(1))
(PRE) SE4->(DbSetOrder(1)) 
(PRE) CTO->(DbSetOrder(1)) 
(PRE) SAH->(DbSetOrder(1))
(PRE) SE1->(DbSetOrder(2))

(PRE) _aTotal[117] := IIF(_aTotal[116] .AND. SF2->(ColumnPos("F2_TIPNOTA")) > 0, SF2->F2_TIPNOTA , "")
(PRE) _aTotal[033] := ALLTRIM (SF2->F2_ESPECIE)
(PRE) _aTotal[075] := Alltrim(SM0->M0_NOMECOM)
(PRE) _aTotal[093] := ""
(PRE) _aTotal[094] := ""
(PRE) _aTotal[095] := DtoS(SF2->F2_EMISSAO)
(PRE) _aTotal[095] := Left(_aTotal[095],4) + "-" + Substr(_aTotal[095],5,2)+ "-" + Right(_aTotal[095],2)
(PRE) _aTotal[096] := SF2->F2_HORA
(PRE) _aTotal[097] := fGetTaxas(SF2->F2_DOC, SF2->F2_SERIE, SF2->F2_CLIENTE, SF2->F2_LOJA,SF2->F2_ESPECIE )
(PRE) _aTotal[098] := ALLTRIM( GETNEWPAR( "MV_ID_PROV" , "" ) )
(PRE) _aTotal[099] := ALLTRIM( GETNEWPAR( "MV_ID_SOFT" , "" ) )
(PRE) _aTotal[100] := ALLTRIM( GETNEWPAR( "MV_CODESEC" , "" ) ) 
(PRE) _aTotal[101] := {"SD2",""}
(PRE) _aTotal[102] := IIF( _aTotal[033] == "NF" , "1" , IIF( _aTotal[033] == "NCC" , "2" , IIF( _aTotal[033] == "NDC" , "3" , IIF( _aTotal[033] == "NDI" , "4" , IIF( _aTotal[033] == "NCI" , "5" , "" ) ) ) ) )
(PRE) _aTotal[103] := ""
(PRE) _aTotal[104] := PADR( Alltrim(SM0->M0_CGC) , 10 , "0" )
(PRE) _aTotal[105] := IIF( _aTotal[033] == "NF" , "f" , IIF( _aTotal[033] == "NCC"  .or. _aTotal[033] == "NCI" , "c" , IIF( _aTotal[033] == "NDC" .or. _aTotal[033] == "NDI" , "d" , IIF( _aTotal[116] , "n" , "f" ) ) ) )
(PRE) _aTotal[106] := M486XHEX(PADR( ALLTRIM( substr( SF2->F2_DOC , 4 , Len(SF2->F2_DOC) - 3 ) ) , 10 , "0" ),10)
(PRE) _aTotal[107] := IIF(AllTrim(SF2->F2_ESPECIE)=="NDC" .OR. _aTotal[116],fGetRef(SF2->F2_DOC, SF2->F2_SERIE, SF2->F2_CLIENTE, SF2->F2_LOJA,SF2->F2_ESPECIE,_aTotal[117]),"")
(PRE) _aTotal[108] := ""
(PRE) _aTotal[109] := Posicione("CTO",1,xFilial("CTO")+Strzero(SF2->F2_MOEDA,2),"CTO_MOESAT")
(PRE) _aTotal[110] := {"SFP",""}
(PRE) _aTotal[111] := ""
(PRE) _aTotal[112] := ""
(PRE) _aTotal[113] := ""
(PRE) _aTotal[114] := "FP_FILUSO='" + cFilAnt + "' AND FP_SERIE='" + SF2->F2_SERIE + "' AND FP_ESPECIE= '" + IIf(_aTotal[033] == "NF","1",IIf(_aTotal[116] ,"8","3")) + "' AND FP_NUMINI <='" + SF2->F2_DOC + "' AND FP_NUMFIM >='" + SF2->F2_DOC + "' AND FP_ATIVO ='1'"
(PRE) _aTotal[115] := "SFP->FP_FILUSO=cFilAnt .AND. SFP->FP_SERIE=SF2->F2_SERIE .AND. SFP->FP_ESPECIE='" + IIf(_aTotal[033] == "NF","1",IIf(_aTotal[116] ,"8","3")) + "' .AND. SFP->FP_NUMINI<=SF2->F2_DOC .AND. FP_NUMFIM >=SF2->F2_DOC .AND. SFP->FP_ATIVO = '1'","FP_ATIVO"

(PREREG) FsQuery(_aTotal[101],1,"D2_DOC='" + SF2->F2_DOC + "' AND D2_SERIE='" + SF2->F2_SERIE + "' AND D2_CLIENTE='" + SF2->F2_CLIENTE + "' AND D2_LOJA='" + SF2->F2_LOJA + "'","SD2->D2_DOC=SF2->F2_DOC .AND. SD2->D2_SERIE=SF2->F2_SERIE .AND. SD2->D2_CLIENTE=SF2->F2_CLIENTE .AND. SD2->D2_LOJA=SF2->F2_LOJA","D2_ITEM") .And. .T.
(PREREG) FsQuery(_aTotal[110],1,_aTotal[114],_aTotal[115]) .And. .T.

[SFP CONTROL FOMULARIOS]
(PRE) _aTotal[103] := Dtos( SFP->FP_DTRESOL )
(PRE) _aTotal[103] := Left(_aTotal[103],4) + "-" + Substr(_aTotal[103],5,2)+ "-" + Right(_aTotal[103],2)
(PRE) _aTotal[111] := Alltrim( SFP->FP_NUMINI )
(PRE) _aTotal[112] := Alltrim( SFP->FP_NUMFIM )
(PRE) _aTotal[113] := Alltrim( SFP->FP_CAI )

[SD2 GENERANDO_XML]
(PRE) If(AllTrim(SF2->F2_ESPECIE)=="NDI",SA2->(MSSeek(xFilial("SA2")+SF2->F2_CLIENTE+SF2->F2_LOJA)) , .T.)
(PRE) If(AllTrim(SF2->F2_ESPECIE)=="NDI",SYA->(MsSeek(xFilial("SYA")+SA2->A2_PAIS)) , .T.)
(PRE) If(AllTrim(SF2->F2_ESPECIE)=="NDI",CTO->(MsSeek(xFilial("CTO")+Strzero(SF2->F2_MOEDA,2))) , .T.)
(PRE) If(AllTrim(SF2->F2_ESPECIE)<>"NDI",IIf(_aTotal[116], SA1->(MSSeek(xFilial("SA1")+SA2->A2_CLIENTE+SA2->A2_LOJCLI)), SA1->(MSSeek(xFilial("SA1")+SF2->F2_CLIENTE+SF2->F2_LOJA))) , .T.)
(PRE) If(AllTrim(SF2->F2_ESPECIE)<>"NDI",SYA->(MsSeek(xFilial("SYA")+SA1->A1_PAIS)) , .T.)
(PRE) If(AllTrim(SF2->F2_ESPECIE)<>"NDI",CTO->(MsSeek(xFilial("CTO")+Strzero(SF2->F2_MOEDA,2))) , .T.)

[XXX CABECERA]
Linha1     C 060 0 Chr(239) + Chr(187) + Chr(191) + '<?xml version="1.0" encoding="UTF-8" standalone="no"?>'

[XXX FACTURA]
(PRE) Iif(AllTrim(SF2->F2_ESPECIE)=="NDI",SYA->(MsSeek(xFilial("SYA")+SA2->A2_PAIS)) , .T.)
(PRE) (SE4->(MSSeek(xFilial("SE4")+SF2->F2_COND)) , .T.)
(PRE) _aTotal[001] := IIF(AllTrim(SF2->F2_ESPECIE)=="NF" .OR. _aTotal[116] ,'<fe:Invoice ','<fe:DebitNote ')
(PRE) _aTotal[001] += 'xmlns:fe="http://www.dian.gov.co/contratos/facturaelectronica/v1" '
(PRE) _aTotal[001] += 'xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2" '
(PRE) _aTotal[001] += 'xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" '
(PRE) _aTotal[001] += 'xmlns:clm54217="urn:un:unece:uncefact:codelist:specification:54217:2001" '
(PRE) _aTotal[001] += 'xmlns:clm66411="urn:un:unece:uncefact:codelist:specification:66411:2001" '
(PRE) _aTotal[001] += 'xmlns:clmIANAMIMEMediaType="urn:un:unece:uncefact:codelist:specification:IANAMIMEMediaType:2003" '
(PRE) _aTotal[001] += 'xmlns:ext="urn:oasis:names:specification:ubl:schema:xsd:CommonExtensionComponents-2" '
(PRE) _aTotal[001] += 'xmlns:qdt="urn:oasis:names:specification:ubl:schema:xsd:QualifiedDatatypes-2" '
(PRE) _aTotal[001] += 'xmlns:sts="http://www.dian.gov.co/contratos/facturaelectronica/v1/Structures" '
(PRE) _aTotal[001] += 'xmlns:udt="urn:un:unece:uncefact:data:specification:UnqualifiedDataTypesSchemaModule:2" '
(PRE) _aTotal[001] += 'xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" '
(PRE) _aTotal[001] += 'xsi:schemaLocation="http://www.dian.gov.co/contratos/facturaelectronica/v1 ../xsd/DIAN_UBL.xsd '
(PRE) _aTotal[001] += 'urn:un:unece:uncefact:data:specification:UnqualifiedDataTypesSchemaModule:2 ../../ubl2/common/UnqualifiedDataTypeSchemaModule-2.0.xsd '
(PRE) _aTotal[001] += 'urn:oasis:names:specification:ubl:schema:xsd:QualifiedDatatypes-2 ../../ubl2/common/UBL-QualifiedDatatypes-2.0.xsd" '
(PRE) _aTotal[001] += '>' + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '    <ext:UBLExtensions>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '        <ext:UBLExtension>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '            <ext:ExtensionContent>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                <sts:DianExtensions>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                    <sts:InvoiceControl>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                        <sts:InvoiceAuthorization>'+ _aTotal[113] +'</sts:InvoiceAuthorization>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                        <sts:AuthorizationPeriod>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                            <cbc:StartDate>'+ _aTotal[103] +'</cbc:StartDate>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                            <cbc:EndDate>'+ _aTotal[103] +'</cbc:EndDate>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                        </sts:AuthorizationPeriod>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                        <sts:AuthorizedInvoices>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                            <sts:Prefix>'+ SF2->F2_SERIE2 +'</sts:Prefix>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                            <sts:From>'+ _aTotal[111] +'</sts:From>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                            <sts:To>'+ _aTotal[112] +'</sts:To>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                        </sts:AuthorizedInvoices>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                    </sts:InvoiceControl>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                    <sts:InvoiceSource>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                        <cbc:IdentificationCode listAgencyID="6" listAgencyName="United Nations Economic Commission for Europe" listSchemeURI="urn:oasis:names:specification:ubl:codelist:gc:CountryIdentificationCode-2.0">CO</cbc:IdentificationCode>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                    </sts:InvoiceSource>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                    <sts:SoftwareProvider>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                        <sts:ProviderID schemeAgencyID="195" schemeAgencyName="CO, DIAN (Direccion de Impuestos y Aduanas Nacionales)">'+ _aTotal[098] +'</sts:ProviderID>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                        <sts:SoftwareID schemeAgencyID="195" schemeAgencyName="CO, DIAN (Direccion de Impuestos y Aduanas Nacionales)">'+ _aTotal[099] +'</sts:SoftwareID>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                    </sts:SoftwareProvider>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                    <sts:SoftwareSecurityCode schemeAgencyID="195" schemeAgencyName="CO, DIAN (Direccion de Impuestos y Aduanas Nacionales)">'+ _aTotal[100] +'</sts:SoftwareSecurityCode>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '                </sts:DianExtensions>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '            </ext:ExtensionContent>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '        </ext:UBLExtension>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '        <ext:UBLExtension>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '            <ext:ExtensionContent>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '            </ext:ExtensionContent>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '        </ext:UBLExtension>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '    </ext:UBLExtensions>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '    <cbc:UBLVersionID>UBL 2.0</cbc:UBLVersionID>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '    <cbc:ProfileID>DIAN 1.0</cbc:ProfileID>'  + ( chr(13)+chr(10) )

// Manual con serie
//(PRE) _aTotal[001] += '    <cbc:ID>'+ SF2->F2_SERIE2 + Alltrim( Str( Val( Substr( SF2->F2_DOC , 4 , 10) ) ) ) +'</cbc:ID>'  + ( chr(13)+chr(10) )
// Manual sin serie
(PRE) _aTotal[001] += '    <cbc:ID>'+ Alltrim( Str( Val( Substr( SF2->F2_DOC , 4 , 10) ) ) ) +'</cbc:ID>'  + ( chr(13)+chr(10) )
(PRE) FsQuery(_aTotal[110],2)
// CUFE Aplica solo para NF
(PRE) _aTotal[093] := ""
(PRE) _aTotal[001] += IIF(AllTrim(SF2->F2_ESPECIE)=="NF" .OR. _aTotal[016],'    <cbc:UUID schemeAgencyID="195" schemeAgencyName="CO, DIAN (Direccion de Impuestos y Aduanas Nacionales)">'+  _aTotal[093] +'</cbc:UUID>'  + ( chr(13)+chr(10) ),"")

(PRE) _aTotal[001] += '    <cbc:IssueDate>'+ _aTotal[095] +'</cbc:IssueDate>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '    <cbc:IssueTime>'+ _aTotal[096] +'</cbc:IssueTime>'  + ( chr(13)+chr(10) )

(PRE) _aTotal[001] += '    <cbc:InvoiceTypeCode listAgencyID="195" listAgencyName="CO, DIAN (Direccion de Impuestos y Aduanas Nacionales)" listSchemeURI="http://www.dian.gov.co/contratos/facturaelectronica/v1/InvoiceType">'+ IIF(AllTrim(SF2->F2_ESPECIE)=="NF","01","92") +'</cbc:InvoiceTypeCode>' + ( chr(13)+chr(10) )

(PRE) _aTotal[001] += '    <cbc:Note><![CDATA['+ IIF(AllTrim(SF2->F2_ESPECIE)=="NDC",SF2->F2_MOTIVO,"") + ']]></cbc:Note>'  + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '    <cbc:DocumentCurrencyCode>'+ Alltrim( Posicione("CTO",1,xFilial("CTO")+Strzero(SF2->F2_MOEDA,2),"CTO_MOESAT") ) +'</cbc:DocumentCurrencyCode>' + ( chr(13)+chr(10) )
(PRE) _aTotal[001] += '    <cbc:CustomizationID>'+ Alltrim(SF2->F2_TIPOPE) +'</cbc:CustomizationID>' + ( chr(13)+chr(10) )

Informações
titleFATECOL.INI


...