"; print "close();"; print "opener.document.form1.submit();"; print ""; } ini_set('memory_limit','256M'); ini_set('max_execution_time','0'); //----------------------------------------------------------------------------------------------------------------------------------- function uf_insert_seguridad($as_titulo,$as_desnom,$as_periodo,$ai_tipo) { ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // Function: uf_insert_seguridad // Access: private // Arguments: as_titulo // Título del reporte // as_desnom // descripción de la nómina // as_periodo // período actual de la nómina // Description: función que guarda la seguridad de quien generó el reporte // Creado Por: Ing. Yesenia Moreno // Fecha Creación: 27/04/2006 ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// global $io_fun_nomina; $ls_codnom=$_SESSION["la_nomina"]["codnom"]; $ls_descripcion="Generó el Reporte ".$as_titulo.". Para ".$as_desnom.". ".$as_periodo; if($ai_tipo==1) { $lb_valido=$io_fun_nomina->uf_load_seguridad_reporte_nomina("SNO","sigesp_sno_r_aportepatronal.php",$ls_descripcion,$ls_codnom); } else { $lb_valido=$io_fun_nomina->uf_load_seguridad_reporte_nomina("SNO","sigesp_sno_r_haportepatronal.php",$ls_descripcion,$ls_codnom); } return $lb_valido; } //----------------------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------------------- function uf_print_encabezado_pagina($as_titulo,$as_desnom,$as_periodo,&$io_pdf) { ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // Function: uf_print_encabezado_pagina // Access: private // Arguments: as_titulo // Título del Reporte // as_desnom // Descripción de la nómina // as_periodo // Descripción del período // io_pdf // Instancia de objeto pdf // Description: función que imprime los encabezados por página // Creado Por: Ing. Yesenia Moreno // Fecha Creación: 27/04/2006 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// $io_encabezado=$io_pdf->openObject(); $io_pdf->saveState(); $io_pdf->line(50,40,555,40); $io_pdf->addJpegFromFile('../../shared/imagebank/'.$_SESSION["ls_logo"],50,720,$_SESSION["ls_width"],$_SESSION["ls_height"]); // Agregar Logo $li_tm=$io_pdf->getTextWidth(11,$as_titulo); $tm=306-($li_tm/2); $io_pdf->addText($tm,730,11,$as_titulo); // Agregar el título $li_tm=$io_pdf->getTextWidth(11,$as_periodo); $tm=306-($li_tm/2); $io_pdf->addText($tm,720,11,$as_periodo); // Agregar el título $li_tm=$io_pdf->getTextWidth(10,$as_desnom); $tm=306-($li_tm/2); $io_pdf->addText($tm,710,10,$as_desnom); // Agregar el título $io_pdf->addText(500,750,8,date("d/m/Y")); // Agregar la Fecha $io_pdf->addText(506,743,7,date("h:i a")); // Agregar la Hora $io_pdf->restoreState(); $io_pdf->closeObject(); $io_pdf->addObject($io_encabezado,'all'); }// end function uf_print_encabezado_pagina //----------------------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------------------- function uf_print_cabecera($as_codconc,$as_nomcon,&$io_pdf) { ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // Function: uf_print_cabecera // Access: private // Arguments: as_codconc // Código de Concepto // as_nomcon // Nombre de Concepto // io_pdf // Instancia de objeto pdf // Description: función que imprime la cabecera por concepto // Creado Por: Ing. Yesenia Moreno // Fecha Creación: 27/04/2006 ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// $io_cabecera=$io_pdf->openObject(); $io_pdf->saveState(); $io_pdf->setColor(0.9,0.9,0.9); $io_pdf->filledRectangle(50,690,500,$io_pdf->getFontHeight(14)); $io_pdf->setColor(0,0,0); $io_pdf->addText(55,695,11,'Concepto '.$as_codconc.' - '.$as_nomcon.''); // Agregar el título $io_pdf->restoreState(); $io_pdf->closeObject(); $io_pdf->addObject($io_cabecera,'all'); }// end function uf_print_cabecera //----------------------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------------------- function uf_print_detalle($la_data,&$io_pdf) { ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // Function: uf_print_detalle // Access: private // Arguments: la_data // arreglo de información // io_pdf // Instancia de objeto pdf // Description: función que imprime el detalle por concepto // Creado Por: Ing. Yesenia Moreno // Fecha Creación: 27/04/2006 ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// $io_pdf->ezSetDy(-2); $la_columnas=array('nro'=>'Nro', 'cedula'=>'Cédula', 'nombre'=>' Apellidos y Nombres', 'personal'=>'Empleado ', 'patron'=>'Patrón ', 'total'=>'Total '); $la_config=array('showHeadings'=>1, // Mostrar encabezados 'fontSize' => 9, // Tamaño de Letras 'titleFontSize' => 12, // Tamaño de Letras de los títulos 'showLines'=>1, // Mostrar Líneas 'shaded'=>0, // Sombra entre líneas 'width'=>500, // Ancho de la tabla 'maxWidth'=>500, // Ancho Máximo de la tabla 'xOrientation'=>'center', // Orientación de la tabla 'outerLineThickness'=>0.5, 'innerLineThickness' =>0.5, 'cols'=>array('nro'=>array('justification'=>'center','width'=>30), // Justificación y ancho de la columna 'cedula'=>array('justification'=>'center','width'=>70), // Justificación y ancho de la columna 'nombre'=>array('justification'=>'left','width'=>160), // Justificación y ancho de la columna 'personal'=>array('justification'=>'right','width'=>80), // Justificación y ancho de la columna 'patron'=>array('justification'=>'right','width'=>80), // Justificación y ancho de la columna 'total'=>array('justification'=>'right','width'=>80))); // Justificación y ancho de la columna $io_pdf->ezTable($la_data,$la_columnas,'',$la_config); }// end function uf_print_detalle //----------------------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------------------- function uf_print_piecabecera($ai_personal,$ai_patron,$ai_total,$io_pdf) { ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // Function: uf_print_piecabecera // Access: private // Arguments: ai_personal // Total por personal // ai_patron // Total por patrón // ai_total // Total // io_pdf // Instancia de objeto pdf // Description: función que imprime el fin de la cabecera por concepto // Creado Por: Ing. Yesenia Moreno // Fecha Creación: 27/04/2006 ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// global $ls_bolivares; $la_data=array(array('name'=>'Total Aporte '.$ls_bolivares.'','personal'=>$ai_personal,'aporte'=>$ai_patron,'total'=>$ai_total)); $la_columna=array('name'=>'','personal'=>'','aporte'=>'','total'=>''); $la_config=array('showHeadings'=>0, // Mostrar encabezados 'fontSize' => 9, // Tamaño de Letras 'titleFontSize' => 12, // Tamaño de Letras de los títulos 'showLines'=>1, // Mostrar Líneas 'shaded'=>2, // Sombra entre líneas 'shadeCol'=>array((249/255),(249/255),(249/255)), // Color de la sombra 'shadeCol2'=>array((249/255),(249/255),(249/255)), // Color de la sombra 'outerLineThickness'=>0.5, 'innerLineThickness' =>0.5, 'width'=>500, // Ancho de la tabla 'maxWidth'=>500, // Ancho Máximo de la tabla 'xOrientation'=>'center', // Orientación de la tabla 'cols'=>array('name'=>array('justification'=>'right','width'=>260), // Justificación y ancho de la columna 'personal'=>array('justification'=>'right','width'=>80), // Justificación y ancho de la columna 'aporte'=>array('justification'=>'right','width'=>80), // Justificación y ancho de la columna 'total'=>array('justification'=>'right','width'=>80))); // Justificación y ancho de la columna $io_pdf->ezTable($la_data,$la_columna,'',$la_config); } //----------------------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------- Instancia de las clases ------------------------------------------------ require_once("../../shared/ezpdf/class.ezpdf.php"); $ls_tiporeporte="0"; $ls_bolivares=""; if (array_key_exists("tiporeporte",$_GET)) { $ls_tiporeporte=$_GET["tiporeporte"]; } switch($ls_tiporeporte) { case "0": if($_SESSION["la_nomina"]["tiponomina"]=="NORMAL") { require_once("sigesp_sno_class_report.php"); $io_report=new sigesp_sno_class_report(); $li_tipo=1; } if($_SESSION["la_nomina"]["tiponomina"]=="HISTORICA") { require_once("sigesp_sno_class_report_historico.php"); $io_report=new sigesp_sno_class_report_historico(); $li_tipo=2; } $ls_bolivares ="Bs."; break; case "1": if($_SESSION["la_nomina"]["tiponomina"]=="NORMAL") { require_once("sigesp_sno_class_reportbsf.php"); $io_report=new sigesp_sno_class_reportbsf(); $li_tipo=1; } if($_SESSION["la_nomina"]["tiponomina"]=="HISTORICA") { require_once("sigesp_sno_class_report_historicobsf.php"); $io_report=new sigesp_sno_class_report_historicobsf(); $li_tipo=2; } $ls_bolivares ="Bs.F."; break; } require_once("../../shared/class_folder/class_funciones.php"); $io_funciones=new class_funciones(); require_once("../class_folder/class_funciones_nomina.php"); $io_fun_nomina=new class_funciones_nomina(); //---------------------------------------------------- Parámetros del encabezado ----------------------------------------------- $ls_desnom=$_SESSION["la_nomina"]["desnom"]; $ls_peractnom=$_SESSION["la_nomina"]["peractnom"]; $ld_fecdesper=$io_funciones->uf_convertirfecmostrar($_SESSION["la_nomina"]["fecdesper"]); $ld_fechasper=$io_funciones->uf_convertirfecmostrar($_SESSION["la_nomina"]["fechasper"]); $ls_titulo="Retenciones y Aportes Patronales"; //$ls_periodo="Período Nro ".$ls_peractnom.", ".$ld_fecdesper." - ".$ld_fechasper.""; $ls_periodo="Período Nro 005 01/05/2009 - 31/05/2009"; //-------------------------------------------------- Parámetros para Filtar el Reporte ----------------------------------------- $ls_codconc=$io_fun_nomina->uf_obtenervalor_get("codconc",""); $ls_nomcon=$io_fun_nomina->uf_obtenervalor_get("nomcon",""); $ls_conceptocero=$io_fun_nomina->uf_obtenervalor_get("conceptocero",""); $ls_orden=$io_fun_nomina->uf_obtenervalor_get("orden","1"); $ls_subnomdes=$io_fun_nomina->uf_obtenervalor_get("subnomdes",""); $ls_subnomhas=$io_fun_nomina->uf_obtenervalor_get("subnomhas",""); //-------------------------------------------------------------------------------------------------------------------------------- $lb_valido=uf_insert_seguridad($ls_titulo,$ls_desnom,$ls_periodo,$li_tipo); // Seguridad de Reporte if($lb_valido) { $lb_valido=$io_report->uf_aportepatronal_personal($ls_codconc,$ls_conceptocero,$ls_subnomdes,$ls_subnomhas,$ls_orden); // Cargar el DS con los datos del reporte } if($lb_valido==false) // Existe algún error ó no hay registros { print(""); } else // Imprimimos el reporte { error_reporting(E_ALL); set_time_limit(1800); $io_pdf=new Cezpdf('LETTER','portrait'); // Instancia de la clase PDF $io_pdf->selectFont('../../shared/ezpdf/fonts/Helvetica.afm'); // Seleccionamos el tipo de letra $io_pdf->ezSetCmMargins(3.6,2.5,3,3); // Configuración de los margenes en centímetros uf_print_encabezado_pagina($ls_titulo,$ls_desnom,$ls_periodo,$io_pdf); // Imprimimos el encabezado de la página $io_pdf->ezStartPageNumbers(550,50,10,'','',1); // Insertar el número de página uf_print_cabecera($ls_codconc,$ls_nomcon,$io_pdf); // Imprimimos la cabecera del registro $li_totrow=$io_report->DS->getRowCount("cedper"); $li_totper=0; $li_totpat=0; for($li_i=1;$li_i<=$li_totrow;$li_i++) { $ls_cedper=$io_report->DS->data["cedper"][$li_i]; $ls_nomper=$io_report->DS->data["apeper"][$li_i].", ".$io_report->DS->data["nomper"][$li_i]; $li_personal=$io_fun_nomina->uf_formatonumerico(abs($io_report->DS->data["personal"][$li_i])); $li_patron=$io_fun_nomina->uf_formatonumerico(abs($io_report->DS->data["patron"][$li_i])); $li_total=abs($io_report->DS->data["personal"][$li_i]+$io_report->DS->data["patron"][$li_i]); $li_total=$io_fun_nomina->uf_formatonumerico($li_total); $li_totper=$li_totper+abs($io_report->DS->data["personal"][$li_i]); $li_totpat=$li_totpat+abs($io_report->DS->data["patron"][$li_i]); $li_totalgeneral=$li_totper+$li_totpat; $la_data[$li_i]=array('nro'=>$li_i,'cedula'=>$ls_cedper,'nombre'=>$ls_nomper,'personal'=>$li_personal,'patron'=>$li_patron,'total'=>$li_total); } $io_report->DS->resetds("cedper"); uf_print_detalle($la_data,$io_pdf); // Imprimimos el detalle unset($la_data); $li_totper=$io_fun_nomina->uf_formatonumerico($li_totper); $li_totpat=$io_fun_nomina->uf_formatonumerico($li_totpat); $li_totalgeneral=$io_fun_nomina->uf_formatonumerico($li_totalgeneral); uf_print_piecabecera($li_totper,$li_totpat,$li_totalgeneral,$io_pdf); // Imprimimos el fin del reporte if($lb_valido) // Si no ocurrio ningún error { $io_pdf->ezStopPageNumbers(1,1); // Detenemos la impresión de los números de página $io_pdf->ezStream(); // Mostramos el reporte } else // Si hubo algún error { print(""); } unset($io_pdf); } unset($io_report); unset($io_funciones); unset($io_fun_nomina); ?>