////////////////////////////////////// // // // JavaScript Functions // // // ////////////////////////////////////// function wrtraspaso(text){ // writeln("w_outtraspaso.document.write('"+text+"\\n');"); fileRpt.writeln(text); } function chk_traspaso() { var query; c_query = database.cursor("select * FROM traspaso WHERE uid=\'" + request.uid+ "\'"); if (c_query.next()) { request.criterio=StringClip(false,c_query.criterio); request.f_traspaso=StringClip(false,c_query.f_traspaso); request.f_emision=StringClip(false,c_query.f_emision); request.f_nro_doc=StringClip(false,c_query.f_nro_doc); request.sel_order=StringClip(false,c_query.sel_order); writeln(' alert("\\r Existe un Traspaso de '+request.f_traspaso+' Pendientes de Confirmación !!!"); '); request.opt_traspaso="true"; } c_query.close(); if (request.opt_traspaso) return true else return false } function insertaTrasp() { status=database.execute('INSERT INTO traspaso(' + ' uid,' + ' sel_order,'+ ' criterio,'+ ' f_traspaso,'+ ' f_emision,'+ ' f_nro_doc ) VALUES ("' + request.uid+ '","' + request.sel_order + '","'+ request.criterio + '","'+ request.f_traspaso + '","'+ request.f_emision + '","'+ request.f_nro_doc + '")'); if ( status != 0 ) { client.is_trans=false; database.rollbackTransaction(); redirect(addClient('error.html?alert=14')); } } function report_traspaso() { client.is_trans=true; database.beginTransaction(); insertaTrasp(); out_traspaso(); database.commitTransaction(); client.is_trans=false; } function rpt_traspaso_Doc() { writeln('w_carta=window.open("'+urlDoc+'","w_traspaso","toolbar=yes,directories=no,menubar=yes,status=no,scrollbars=yes,resizable=yes,width=600,height=500");'); } function rpt_traspaso_Data() { writeln('w_carta=window.open("'+urlData+'","w_traspaso","toolbar=yes,directories=no,menubar=yes,status=no,scrollbars=yes,resizable=yes,width=600,height=500");'); } function cleanup_traspaso() { // Borramos en tabla de pagos datos del usuario status=database.execute("DELETE FROM traspaso WHERE uid=\'" + request.uid+ "\'"); return; } function out_traspaso() { var Clave="-"; var SumaTotal=0; var fileRpt=new File(nomDoc); fileRpt.open("w"); var fileData=new File(nomData); fileData.open("w"); fileRpt.writeln(''); fileRpt.writeln(''); fileRpt.writeln(''); fileRpt.writeln('
Traspaso de Facturas - '+request.f_traspaso+' - '); if (request.f_traspaso=="gasto") fileRpt.writeln(''); else fileRpt.writeln(''); fileRpt.writeln('
 ');
   fileRpt.writeln('
'); if (request.f_traspaso=="gasto") fileRpt.writeln('N.Doc. Línea Fecha Centro Cuenta Cv. DEBE HABER C o n c e p t o F. Vto. Contrap.'); else { fileRpt.writeln(''); fileRpt.writeln('N.Doc. Línea Fecha Centro Cuenta Cv. DEBE HABER C o n c e p t o F. Vto. Contrap.'); } fileRpt.writeln('
'); linea=" "; // c_traspaso = database.cursor("SELECT * FROM traspaso WHERE uid="+ request.uid+" ORDER BY nro_reg "); var nlin=1 var nro_doc=NroUnformat(request.f_nro_doc); while (c_traspdocs.next()) { if (request.f_traspaso=="pago") c_traspaso = database.cursor("SELECT * FROM facturas,proveedores WHERE facturas.nif=proveedores.nif "+ " and nro_doc_pago='"+c_traspdocs.nro_doc_pago+"' "+ " ORDER BY " + request.sel_order); if (request.f_traspaso=="gasto") c_traspaso = database.cursor("SELECT * FROM facturas,proveedores WHERE facturas.nif=proveedores.nif "+ " and nro_reg='"+c_traspdocs.nro_reg+"' "+ " ORDER BY " + request.sel_order); if (request.f_traspaso=="vto") c_traspaso = database.cursor("SELECT * FROM facturas,proveedores WHERE facturas.nif=proveedores.nif "+ " and nro_reg_vto='"+c_traspdocs.nro_reg_vto+"' "+ " ORDER BY " + request.sel_order); while (c_traspaso.next()) { request.razon_social=c_traspaso.razon_social; if ( request.f_traspaso=="pago" && Clave == c_traspaso.nro_doc_pago ) continue; if ( request.f_traspaso=="vto" && Clave == c_traspaso.nro_reg_vto ) continue ; nrolin=1; if (request.f_traspaso!="vto") CursorTabla("acf","nro_reg","=\'"+c_traspaso.nro_reg+"\' order by nro_lin ",false,""); if (request.f_traspaso=="gasto") { fileRpt.writeln('
'); while (c_aptectasfra.next()) { make_apte(nro_doc,"",StringClip(false,c_traspaso.cta_contable),"",nrolin,0); // if ( nrolin+1 > request.maxLins ) { // skipTopPage(nrolin,request.maxLins); // nrolin=0; // } fileData.writeln(request.linea); fileRpt.writeln(request.lindoc); nrolin++; } fileRpt.writeln('
'); } else { if (request.f_traspaso!="vto") c_aptectasfra.next(); // fileRpt.writeln(''); if (request.f_traspaso=="pago") CursorTabla("fa","nro_doc_pago","=\'"+c_traspaso.nro_doc_pago+"\'",true,""); if (request.f_traspaso=="vto") CursorTabla("fa","nro_reg_vto","=\'"+c_traspaso.nro_reg_vto+"\'",true,""); SumaTotal=0; request.cta_contable=c_traspaso.cta_contable; request.f_emision_pago=datetoString(c_traspaso.f_emision_pago); request.is_remesa ="N"; while ( true ) { request.nro_reg=c_facturas.nro_reg; request.nro_fra=c_facturas.nro_fra; request.nro_doc_pago=c_facturas.nro_doc_pago; request.importe_total=c_facturas.importe_total; if ( c_traspaso.nro_doc_pago != c_facturas.nro_doc_pago ) request.is_remesa ="S"; if (request.f_traspaso=="pago") { traspaso_pago(nro_doc,nrolin,"D"); if (c_facturas.tipo_doc_pago == "1" ) { fileData.writeln(request.linea); fileRpt.writeln(request.lindoc); nrolin++; traspaso_pago(nro_doc,nrolin,"H"); Clave=c_traspaso.nro_doc_pago; } } if (request.f_traspaso=="vto") traspaso_vto(nro_doc,nrolin,"D"); fileData.writeln(request.linea); fileRpt.writeln(request.lindoc); nrolin++; SumaTotal=parseFloat(c_facturas.importe_total)+parseFloat(SumaTotal); if (!c_facturas.next()) break; } c_facturas.close(); request.nro_reg=c_traspaso.nro_reg; request.nro_fra=c_traspaso.nro_fra; request.nro_doc_pago=c_traspaso.nro_doc_pago; request.importe_total=SumaTotal; if (request.f_traspaso=="pago" && c_traspaso.tipo_doc_pago == "2" ) { traspaso_pago(nro_doc,nrolin,"H"); Clave=c_traspaso.nro_doc_pago; fileData.writeln(request.linea); fileRpt.writeln(request.lindoc); nrolin++; } if (request.f_traspaso=="vto") { traspaso_vto(nro_doc,nrolin,"H"); Clave=c_traspaso.nro_reg_vto; fileData.writeln(request.linea); fileRpt.writeln(request.lindoc); nrolin++; } // fileRpt.writeln('
'); } if (request.f_traspaso!="vto") c_aptectasfra.close(); fileRpt.writeln('
'); nro_doc++; } c_traspaso.close(); } c_traspdocs.close(); fileRpt.writeln(''); request.lindoc="TOTALES DEBE : "+NroFormat(SumaDebe,NF11); // request.lindoc=request.lindoc.substring(0,46)+NroFormat(SumaDebe,NF11)+NroFormat(SumaHaber,NF11)+"" fileRpt.writeln(request.lindoc); request.lindoc="TOTALES HABER: "+NroFormat(SumaHaber,NF11); fileRpt.writeln(request.lindoc); fileRpt.writeln('
');
 fileRpt.writeln('');
 fileRpt.writeln('');
 fileRpt.writeln('');
 fileRpt.close();
 fileData.close();
}
function traspaso_pago(nro_doc,nrolin,tipoApte) {
        var DocNro="";
        var s_cta="";
        s_banco=parseInt(c_traspaso.cod_banco)+"";
        lon=s_banco.length;
        request.d_cod_cta=request.cta_contable;  
        if (c_traspaso.tipo_doc_pago == "1" )
              s_cta=request.pag_hpag;
        if (c_traspaso.tipo_doc_pago == "2" )
              s_cta=request.pag_htal;
        s_lon=s_cta.length;
        request.h_cod_cta=s_cta.substring(0,s_lon-lon)+s_banco;
        s_lon=request.d_cod_cta.length;
        if ( tipoApte == "H")  {
             DocNro=StringClip(false,request.nro_doc_pago)+"";
             make_apte(nro_doc,request.h_cod_cta,request.d_cod_cta,"H",nrolin,request.importe_total,DocNro);
        }
        if ( tipoApte == "D") {
             DocNro=StringClip(false,request.nro_fra)+" "+request.nro_reg.substring(4,10);
             make_apte(nro_doc,request.d_cod_cta,request.h_cod_cta,"D",nrolin,request.importe_total,DocNro);
        }
}

function traspaso_vto(nro_doc,nrolin,tipoApte) {
        var DocNro="";
        var	s_cta="";
        s_banco=parseInt(c_traspaso.cod_banco)+"";
        lon=s_banco.length;
        if (c_traspaso.tipo_doc_pago == "1" )
              s_cta=request.vto_dpag;
        if (c_traspaso.tipo_doc_pago == "2" ) 
              s_cta=request.vto_dtal;
        s_lon=s_cta.length;
        request.d_cod_cta=s_cta.substring(0,s_lon-lon)+s_banco;
        s_lon=request.vto_h.length;
        request.h_cod_cta=request.vto_h.substring(0,s_lon-lon)+s_banco;
        DocNro=StringClip(false,request.nro_doc_pago);
        if ( tipoApte == "H")  {
             DocNro=StringClip(false,request.nro_doc_pago);
             if ( request.is_remesa == "S" ) {
                  lon=c_traspaso.nro_reg_vto.length;
                  request.razon_social="REMESA "+c_traspaso.nro_reg_vto.substring(5,lon);
             }   
             make_apte(nro_doc,request.h_cod_cta,request.d_cod_cta,"H",nrolin,request.importe_total,DocNro);
        }
        if ( tipoApte == "D") {
             if ( request.is_remesa == "S" ) {
        	         CursorTabla("pr","nif","=\'"+StringClip(true,c_facturas.nif)+"\'",false,false);
                  request.razon_social=StringClip(false,c_proveedores.razon_social);  	     
                  c_proveedores.close();
             }   
             make_apte(nro_doc,request.d_cod_cta,request.h_cod_cta,"D",nrolin,request.importe_total,DocNro);
             DocNro=StringClip(false,request.nro_fra)+" "+request.nro_reg.substring(4,10);
        }
}

function make_apte(nro_doc,cod_cta,c_cod_cta,tipo_apte,nl,Cantidad,DocNro) {
             linea="                                                                                                                        ";   
             request.linea=linea;
             request.lindoc="";
             cadena=parseInt(nro_doc)+"";
             lon=cadena.length;
             request.linea=request.linea.substring(0,p_nro_doc-lon)+cadena+linea;
             cadena=parseInt(nl)+"";
             lon=cadena.length;
             request.linea=request.linea.substring(0,p_nro_lin-lon)+cadena+linea;
             request.lindoc=StringClip(false,request.linea);
             s_cadena=request.f_emision;
             if (request.f_traspaso=="pago")
                 s_cadena=request.f_emision_pago;
             cadena=datetoNString(s_cadena);
             lon=cadena.length;
             request.linea=request.linea.substring(0,p_f_cont-lon)+cadena+linea;
             request.linea=request.linea.substring(0,p_f_emis-lon)+cadena+linea;             
             request.lindoc=request.lindoc+"  "+s_cadena;
             cadena=StringClip(false,c_traspaso.cod_centro);
             request.lindoc=request.lindoc+"  "+cadena;
             lon=cadena.length;
             request.linea=request.linea.substring(0,p_centro-lon)+cadena+linea;
             if (request.f_traspaso=="gasto")
                 cadena=StringClip(false,c_aptectasfra.cod_cta);
             if (request.f_traspaso=="pago")
                 cadena=StringClip(false,cod_cta)+"";
             if (request.f_traspaso=="vto")
                 cadena=StringClip(false,cod_cta)+"";
             request.lindoc=request.lindoc+"  "+cadena;
             lon=cadena.length;
             request.linea=request.linea.substring(0,p_cta-lon)+cadena+linea;
             if (request.f_traspaso=="gasto")
                 cadena=c_aptectasfra.clave+"";
             if (request.f_traspaso=="pago")
                 cadena=request.f_clave+"";
             if (request.f_traspaso=="vto")
                 cadena=request.f_clave+"";
             request.lindoc=request.lindoc+"  "+cadena;
             clave=cadena;
             if (request.f_traspaso=="gasto") {
                  nro=c_aptectasfra.importe;
                  tipo_apte=c_aptectasfra.tipo_apte;
             } else {    
                     nro=Cantidad;
             }
             if ( c_traspaso.tipo_doc_pago == "1" ) 
                cadDoc="P/";
             if ( c_traspaso.tipo_doc_pago == "2" )              
                cadDoc="T/";
             if ( nro < 0 ) {
                nro=nro*-1;
                if (request.f_traspaso=="pago" && tipo_apte == "D") 
                    cadDoc="";
                if ( tipo_apte == "D" ) 
                     tipo_apte="H";
                else
                     tipo_apte="D";
             }
             if (tipo_apte == "H") {
                    SumaHaber=SumaHaber+nro;
                    request.lindoc=request.lindoc+"             "+NroFormat(nro,NF9)+"  ";                    
             } else {
                    SumaDebe=SumaDebe+nro;
                    request.lindoc=request.lindoc+"  "+NroFormat(nro,NF9)+"             ";                    
             };
             cadena=tipo_apte;
             lon=cadena.length;
             request.linea=request.linea.substring(0,p_tipo_apte-lon)+cadena+linea;
             cadena=NroUnformat(NroFormat(nro,NF9))+"";
             lon=cadena.length;
             request.linea=request.linea.substring(0,p_importe-lon)+cadena+linea;
             lon=clave.length;
             request.linea=request.linea.substring(0,p_clave-lon)+clave+linea;
             if (request.f_traspaso=="gasto") {
                 cadena=StringClip(false,c_aptectasfra.concepto);
//                   cadena=StringClip(false,c_traspaso.nro_fra)+" "+c_traspaso.nro_reg.substring(4,10)+" "+StringClip(false,request.razon_social);
             }
             if (request.f_traspaso=="pago" && tipo_apte == "H") 
                   cadena=cadDoc+DocNro+" "+StringClip(false,request.razon_social);
             if (request.f_traspaso=="pago" && tipo_apte == "D") {
//                 cadena=StringClip(false,c_aptectasfra.concepto);
                   cadena=DocNro+StringClip(false,request.razon_social);
             }
             if (request.f_traspaso=="vto" && tipo_apte == "D")
                 cadena=cadDoc+DocNro+" "+StringClip(false,request.razon_social);
             if (request.f_traspaso=="vto" && tipo_apte == "H") {
                 if ( request.is_remesa == "S" ) 
                    cadena=StringClip(false,request.razon_social);
                 else
                    cadena=cadDoc+DocNro+" "+StringClip(false,request.razon_social);
             }
             lon=30; // lon=cadena.length;
             s_cadena=cadena+linea;
             request.lindoc=request.lindoc+"  "+s_cadena.substring(0,lon);
             request.linea=request.linea.substring(0,p_concepto-lon)+cadena.substring(0,lon)+linea;
             if (request.f_traspaso=="gasto") {
                 s_cadena="      ";
					  cadena=s_cadena;
             }
             else {
                 s_cadena=datetoString(c_traspaso.vto_pago);
                 cadena=datetoNString(s_cadena);
             }
             request.lindoc=request.lindoc+"  "+s_cadena;
             lon=cadena.length;
             request.linea=request.linea.substring(0,p_vto-lon)+cadena+linea;
             cadena=StringClip(false,c_cod_cta);
             lon=cadena.length;
//texto="p_contracta="+p_contracta+" lon="+lon+" c_cod_cta="+c_cod_cta
//debug(texto)
//debug(request.linea)
             request.lindoc=request.lindoc+"  "+cadena;
//             if (request.f_traspaso=="pago" && tipo_apte == "H" && cod_cta.substring(0,2) != "41")      
//                 lon=lon-4;
             request.linea=request.linea.substring(0,p_contracta-lon)+cadena;
//debug(request.linea)
}