ctasapagar/l_trasp_old.js

387 lines
18 KiB
JavaScript

//////////////////////////////////////
// //
// 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('<HTML>');
fileRpt.writeln('<HEAD></HEAD>');
fileRpt.writeln('<BODY>');
fileRpt.writeln('<B><I><CENTER> Traspaso de Facturas - '+request.f_traspaso+' - </B></I>');
if (request.f_traspaso=="gasto")
fileRpt.writeln('<FONT SIZE=1>');
else
fileRpt.writeln('<FONT SIZE=1>');
fileRpt.writeln('<PRE> ');
fileRpt.writeln('<HR>');
if (request.f_traspaso=="gasto")
fileRpt.writeln('<B>N.Doc. Línea Fecha Centro Cuenta Cv. DEBE HABER C o n c e p t o F. Vto. Contrap.</B>');
else {
fileRpt.writeln('<TABLE ALIGN="CENTER" BORDER=0>');
fileRpt.writeln('<B>N.Doc. Línea Fecha Centro Cuenta Cv. DEBE HABER C o n c e p t o F. Vto. Contrap.</B>');
}
fileRpt.writeln('<HR>');
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('<TABLE ALIGN="CENTER" BORDER=0>');
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('</TABLE>');
} else {
if (request.f_traspaso!="vto")
c_aptectasfra.next();
// fileRpt.writeln('<TABLE ALIGN="CENTER" BORDER=0>');
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('</TABLE>');
}
if (request.f_traspaso!="vto")
c_aptectasfra.close();
fileRpt.writeln('<HR>');
nro_doc++;
}
c_traspaso.close();
}
c_traspdocs.close();
fileRpt.writeln('</TABLE>');
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('<PRE>');
fileRpt.writeln('</FONT>');
fileRpt.writeln('</BODY>');
fileRpt.writeln('</HTML>');
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)
}