$objMDB = new DataBase(); $objMDB->getInstance(); - TopicsExpress



          

$objMDB = new DataBase(); $objMDB->getInstance(); $pdf = new FPDF(); $pdf->AddPage(); $row = $this->getNameCustomer($db); //$row[razonsocial] $pdf->SetFont(Helvetica, B, 8); $pdf->SetFillColor(252, 252, 253); $pdf->SetY(15); $pdf->SetX(10); $pdf->Cell(25, 6, Descripcion: , 0, L, 1); $pdf->SetX(30); $pdf->Cell(25, 6, utf8_decode(RESUMÉN DE NÓMINA POR EMPLEADO Y CONCEPTO), 0, L, 1); $pdf->SetX(140); $pdf->Cell(25, 6, Reporte: , 0, L, 1); $pdf->SetX(152); $pdf->Cell(25, 6, RepNomin , 0, L, 1); //segundo renglon $pdf->SetY(19); $pdf->SetX(10); $pdf->Cell(25, 6, utf8_decode(Razón Social: ), 0, L, 1); $pdf->SetX(30); $pdf->Cell(25, 6, trim(utf8_decode(utf8_encode($row[RazonSocial]))), 0, L, 1); $pdf->SetX(140); $pdf->Cell(25, 6, Fecha: . date(Y-d-m/h:m:s), 0, L, 1); $pdf->SetY(23); //obtencion de periodos $row = $this->getPeriodDates($db, $ejecucion); //conversion de fechas Date a String PHP $fechaInicio = substr($row[FechaInicio]->format(d-m-Y H:i:s), 0, 10); $fechaFinal = substr($row[FechaFin]->format(d-m-Y H:i:s), 0, 10); $pdf->SetX(10); $pdf->Cell(25, 6, utf8_decode(Periodo de Nomina: ), 0, L, 1); $pdf->SetX(38); $pdf->Cell(25, 6, trim(utf8_decode(utf8_encode($row[Nombre]))), 0, L, 1); $pdf->SetX(116); $pdf->Cell(25, 6, Del . UtilityReporter::monthLetter($fechaInicio) . al . UtilityReporter::monthLetter($fechaFinal), 0, L, 1); $pdf->SetFont(Helvetica, B, 8); $pdf->SetLineWidth(0.1); $pdf->Line(10, 30, 194, 30); ///HEADERS $pdf->SetY(30); $pdf->SetFont(helvetica, b, 7); $pdf->SetMargins(0, 0); $pdf->SetFillColor(255, 235, 242); $pdf->SetX(10); $pdf->Cell(10, 4, Clave, 1, 0, L, 1); $pdf->SetX(20); $pdf->Cell(40, 4, Concepto, 1, 0, L, 1); $pdf->SetX(60); $pdf->Cell(18, 4, Importe, 1, 0, L, 1); $pdf->SetX(78); $pdf->Cell(11, 4, utf8_decode(Días), 1, 0, L, 1); $pdf->SetX(89); $pdf->Cell(10, 4, Horas, 1, 0, L, 1); //Hardcode Small Second Headers $pdf->SetMargins(0, 0); $pdf->SetFillColor(255, 235, 242); $pdf->SetX(105); $pdf->Cell(10, 4, Clave, 1, 0, L, 1); $pdf->SetX(115); $pdf->Cell(40, 4, Concepto, 1, 0, L, 1); $pdf->SetX(155); $pdf->Cell(18, 4, Importe, 1, 0, L, 1); $pdf->SetX(173); $pdf->Cell(11, 4, utf8_decode(Días), 1, 0, L, 1); $pdf->SetX(184); $pdf->Cell(10, 4, Horas, 1, 0, L, 1); $pdf->Ln(); $ejecucionArrayRepNomin = $this->getExecutionConceptsForResEmpre($db, $ejecucion); $headerDataEmployees = $this->getDataForEmployesInRep($db, $ejecucion); $sql = SELECT DISTINCT clavedelempleado FROM . $ejecucionArrayRepNomin[0] . ORDER BY ClaveDelEmpleado ASC; $totalClaves = $this->sendQueryAndResultArray($sql); $contadorDeFilas=35; $contadorDeFilasColumnaDos=35; for ($i = 0; $i < count($totalClaves); $i++) { /** FLAGS TO KNOW WHERE IS VALIDATION ENTERS HEYEA**/ $flagHeaders = false; $flagPercepcion = false; $flagDeduccion = false; $flagNetos = false; $objMDB = new DataBase(); $objMDB->getInstance(); $sql = SELECT $headerDataEmployees[0].ClaveDelEmpleado, . $headerDataEmployees[0].NombreCompleto, . $headerDataEmployees[0].RFC, . $headerDataEmployees[0].NSS, . $headerDataEmployees[0].FechaDeIngreso, . $headerDataEmployees[0].CURP, . $headerDataEmployees[1].SueldoDiario, . $headerDataEmployees[1].SdiTope, . $headerDataEmployees[1].SueldoMensual, . $db.dbo.ZonaEconomica.SalarioMinimo, . $db.dbo.CentrodeCostos.CentroDeCostos, . $db.dbo.Puesto.Puesto FROM $headerDataEmployees[0] INNER JOIN $headerDataEmployees[1] ON $headerDataEmployees[0].clavedelempleado=$headerDataEmployees[1].clavedelempleado INNER JOIN $db.dbo.Puesto ON $headerDataEmployees[1].idpuesto=puesto.idpuesto INNER JOIN $db.dbo.ZonaEconomica ON $headerDataEmployees[1].idzonaeconomica=Zonaeconomica.idzonaeconomica INNER JOIN $db.dbo.CentrodeCostos ON $headerDataEmployees[1].idcentrodecostos=centrodecostos.idcentrodecostos WHERE $headerDataEmployees[0].clavedelempleado= . trim($totalClaves[$i][0]) . ORDER BY $headerDataEmployees[0].clavedelempleado ASC; $pdf->SetFont(helvetica, , 7); $pdf->SetLineWidth(0.1); $pdf->Line(10, $contadorDeFilas, 186, $contadorDeFilas); $percepciones = $this->sendQueryAndResultArray($sql); for($p=0;$pGetY() if it is greatter than 270 we need * to print new sheet into PDF Document. *@category bug - fix **/ if($pdf->GetY()>260): $pdf->AddPage(); $row = $this->getNameCustomer($db); //$row[razonsocial] $pdf->SetFont(Helvetica, B, 8); $pdf->SetFillColor(252, 252, 253); $pdf->SetY(15); $pdf->SetX(10); $pdf->Cell(25, 6, Descripcion: , 0, L, 1); $pdf->SetX(30); $pdf->Cell(25, 6, utf8_decode(RESUMÉN DE NÓMINA POR EMPLEADO Y CONCEPTO), 0, L, 1); $pdf->SetX(140); $pdf->Cell(25, 6, Reporte: , 0, L, 1); $pdf->SetX(152); $pdf->Cell(25, 6, RepNomin , 0, L, 1); //segundo renglon $pdf->SetY(19); $pdf->SetX(10); $pdf->Cell(25, 6, utf8_decode(Razón Social: ), 0, L, 1); $pdf->SetX(30); $pdf->Cell(25, 6, trim(utf8_decode(utf8_encode($row[RazonSocial]))), 0, L, 1); $pdf->SetX(140); $pdf->Cell(25, 6, Fecha: . date(Y-d-m/h:m:s), 0, L, 1); $pdf->SetY(23); //obtencion de periodos $row = $this->getPeriodDates($db, $ejecucion); //conversion de fechas Date a String PHP $fechaInicio = substr($row[FechaInicio]->format(d-m-Y H:i:s), 0, 10); $fechaFinal = substr($row[FechaFin]->format(d-m-Y H:i:s), 0, 10); $pdf->SetX(10); $pdf->Cell(25, 6, utf8_decode(Periodo de Nomina: ), 0, L, 1); $pdf->SetX(38); $pdf->Cell(25, 6, trim(utf8_decode(utf8_encode($row[Nombre]))), 0, L, 1); $pdf->SetX(116); $pdf->Cell(25, 6, Del . UtilityReporter::monthLetter($fechaInicio) . al . UtilityReporter::monthLetter($fechaFinal), 0, L, 1); $pdf->SetFont(Helvetica, B, 8); $pdf->SetLineWidth(0.1); $pdf->Line(10, 30, 194, 30); ///HEADERS $pdf->SetY(30); $pdf->SetFont(helvetica, b, 7); $pdf->SetMargins(0, 0); $pdf->SetFillColor(255, 235, 242); $pdf->SetX(10); $pdf->Cell(10, 4, Clave, 1, 0, L, 1); $pdf->SetX(20); $pdf->Cell(40, 4, Concepto, 1, 0, L, 1); $pdf->SetX(60); $pdf->Cell(18, 4, Importe, 1, 0, L, 1); $pdf->SetX(78); $pdf->Cell(11, 4, utf8_decode(Días), 1, 0, L, 1); $pdf->SetX(89); $pdf->Cell(10, 4, Horas, 1, 0, L, 1); //Hardcode Small Second Headers $pdf->SetMargins(0, 0); $pdf->SetFillColor(255, 235, 242); $pdf->SetX(105); $pdf->Cell(10, 4, Clave, 1, 0, L, 1); $pdf->SetX(115); $pdf->Cell(40, 4, Concepto, 1, 0, L, 1); $pdf->SetX(155); $pdf->Cell(18, 4, Importe, 1, 0, L, 1); $pdf->SetX(173); $pdf->Cell(11, 4, utf8_decode(Días), 1, 0, L, 1); $pdf->SetX(184); $pdf->Cell(10, 4, Horas, 1, 0, L, 1); $pdf->Ln(); $contadorDeFilas=35; $contadorDeFilasColumnaDos=35; $flagHeaders = true; endif; /** *@example Start to print into PDF File first make a validation * **/ $pdf->SetY($contadorDeFilas); $pdf->SetX(10); $pdf->Cell(10, 4, $percepciones[$p][ClaveDelEmpleado] , 0, L, 1); $pdf->SetX(18); $pdf->Cell(35, 4, utf8_decode(utf8_encode($percepciones[$p][NombreCompleto])), 0, L, 1); $pdf->SetX(80); $pdf->Cell(20, 4, RFC: . $percepciones[$p][RFC], 0, L, 1); $pdf->SetX(115); $pdf->Cell(11, 4, NSS: . $percepciones[$p][NSS], 0, L, 1); $pdf->SetX(150); $pdf->Cell(10, 4, F. Ingreso . self::monthLetter(substr($percepciones[$p][FechaDeIngreso]->format(d/m/Y H:i:s), 0, 10)), 0, L, 1); $contadorDeFilas = $contadorDeFilas + 3; // LLENADO CABEZERAS PÉR EMPLEADO SEGUNDA SECCION $pdf->SetY($contadorDeFilas); $pdf->SetX(10); $pdf->Cell(10, 4, Puesto: . utf8_decode(utf8_encode($percepciones[$p][Puesto])), 0, L, 1); $pdf->SetX(80); $pdf->Cell(18, 4, Sdo. Diario: . number_format($percepciones[$p][SueldoDiario], 2, ., ,), 0, L, 1); $pdf->SetX(115); $pdf->Cell(11, 4, Sdi. Imss: . number_format($percepciones[$p][SdiTope], 2, ., ,), 0, L, 1); $pdf->SetX(150); $pdf->Cell(10, 4, Sdo. Mensual: . number_format($percepciones[$p][SueldoMensual], 2, ., ,), 0, L, 1); $contadorDeFilas = $contadorDeFilas + 3; // LLENADO CABEZERAS PÉR EMPLEADO SEGUNDA SECCION $pdf->SetY($contadorDeFilas); $pdf->SetX(10); $pdf->Cell(10, 4, Departamento: . utf8_decode(utf8_encode($percepciones[$p][CentroDeCostos])), 0, L, 1); $pdf->SetX(80); $pdf->Cell(18, 4, Salario Minimo Zona: .number_format($percepciones[$p][SalarioMinimo], 2, ., ,), 0, L, 1); $pdf->SetX(150); $pdf->Cell(10, 4, CURP: . $percepciones[$p][CURP], 0, L, 1); endfor; /** *@example PERCEPCIONES * * * **/ $p=0; $total=0; $contadorDeFilas = $contadorDeFilas + 4; $contadorDeFilasColumnaDos = $contadorDeFilas; $pdf->Line(10, $contadorDeFilas, 187, $contadorDeFilas); /* QUERY THAT RETRIVERING DATA FROM PERCEPCIONES TB_OBJECT*/ $sql_percepciones = SELECT $db.dbo.av_concepto.idconcepto, clave, nombre, importe, dias, horas FROM $ejecucionArrayRepNomin[0] INNER JOIN $db.dbo.av_concepto ON $ejecucionArrayRepNomin[0].idconcepto = $db.dbo.av_concepto.idconcepto WHERE clavedelempleado=.$totalClaves[$i][0]. ORDER BY idconcepto; $percepcionObject = $this->sendQueryAndResultArray($sql_percepciones); for($p=0;$pSetY($contadorDeFilas); $pdf->SetFont(helvetica, , 6); $pdf->SetX(10); $pdf->Cell(10, 4, $percepcionObject[$p][clave], 0, L, 1); $pdf->SetX(20); $pdf->Cell(40, 4, utf8_decode(utf8_encode($percepcionObject[$p][nombre])),0, L, 1); $pdf->SetX(60); $pdf->Cell(18, 4, number_format($percepcionObject[$p][importe], 2, ., ,), 0, L, 1); $pdf->SetX(78); $pdf->Cell(11, 4, number_format($percepcionObject[$p][dias], 2, ., ,), 0, L, 1); $pdf->SetX(89); $pdf->Cell(10, 4, number_format($percepcionObject[$p][horas], 2, ., ,), 0, L, 1); $total = $total + $percepcionObject[$p][importe]; $contadorDeFilas = $contadorDeFilas + 3 ; /** *@author Eduardo Moises Lopez Rodriguez *@version 1.1 Payroll Reporter 2014 *@uses out of bound Here we need to validate in every iteration or * for cicle to our $pdf->GetY() if it is greatter than 270 we need * to print new sheet into PDF Document. *@category bug - fix **/ if($pdf->GetY()>260): $pdf->AddPage(); $row = $this->getNameCustomer($db); //$row[razonsocial] $pdf->SetFont(Helvetica, B, 8); $pdf->SetFillColor(252, 252, 253); $pdf->SetY(15); $pdf->SetX(10); $pdf->Cell(25, 6, Descripcion: , 0, L, 1); $pdf->SetX(30); $pdf->Cell(25, 6, utf8_decode(RESUMÉN DE NÓMINA POR EMPLEADO Y CONCEPTO), 0, L, 1); $pdf->SetX(140); $pdf->Cell(25, 6, Reporte: , 0, L, 1); $pdf->SetX(152); $pdf->Cell(25, 6, RepNomin , 0, L, 1); //segundo renglon $pdf->SetY(19); $pdf->SetX(10); $pdf->Cell(25, 6, utf8_decode(Razón Social: ), 0, L, 1); $pdf->SetX(30); $pdf->Cell(25, 6, trim(utf8_decode(utf8_encode($row[RazonSocial]))), 0, L, 1); $pdf->SetX(140); $pdf->Cell(25, 6, Fecha: . date(Y-d-m/h:m:s), 0, L, 1); $pdf->SetY(23); //obtencion de periodos $row = $this->getPeriodDates($db, $ejecucion); //conversion de fechas Date a String PHP $fechaInicio = substr($row[FechaInicio]->format(d-m-Y H:i:s), 0, 10); $fechaFinal = substr($row[FechaFin]->format(d-m-Y H:i:s), 0, 10); $pdf->SetX(10); $pdf->Cell(25, 6, utf8_decode(Periodo de Nomina: ), 0, L, 1); $pdf->SetX(38); $pdf->Cell(25, 6, trim(utf8_decode(utf8_encode($row[Nombre]))), 0, L, 1); $pdf->SetX(116); $pdf->Cell(25, 6, Del . UtilityReporter::monthLetter($fechaInicio) . al . UtilityReporter::monthLetter($fechaFinal), 0, L, 1); $pdf->SetFont(Helvetica, B, 8); $pdf->SetLineWidth(0.1); $pdf->Line(10, 30, 194, 30); ///HEADERS $pdf->SetY(30); $pdf->SetFont(helvetica, b, 7); $pdf->SetMargins(0, 0); $pdf->SetFillColor(255, 235, 242); $pdf->SetX(10); $pdf->Cell(10, 4, Clave, 1, 0, L, 1); $pdf->SetX(20); $pdf->Cell(40, 4, Concepto, 1, 0, L, 1); $pdf->SetX(60); $pdf->Cell(18, 4, Importe, 1, 0, L, 1); $pdf->SetX(78); $pdf->Cell(11, 4, utf8_decode(Días), 1, 0, L, 1); $pdf->SetX(89); $pdf->Cell(10, 4, Horas, 1, 0, L, 1); //Hardcode Small Second Headers $pdf->SetMargins(0, 0); $pdf->SetFillColor(255, 235, 242); $pdf->SetX(105); $pdf->Cell(10, 4, Clave, 1, 0, L, 1); $pdf->SetX(115); $pdf->Cell(40, 4, Concepto, 1, 0, L, 1); $pdf->SetX(155); $pdf->Cell(18, 4, Importe, 1, 0, L, 1); $pdf->SetX(173); $pdf->Cell(11, 4, utf8_decode(Días), 1, 0, L, 1); $pdf->SetX(184); $pdf->Cell(10, 4, Horas, 1, 0, L, 1); $pdf->Ln(); $contadorDeFilas=35; $contadorDeFilasColumnaDos=35; $flagPercepcion = true; endif; endfor; $pdf->SetLineWidth(0.1); $pdf->SetFont(Helvetica, B, 6); $contadorDeFilas++; $pdf->Line(10, $contadorDeFilas, 95, $contadorDeFilas); $pdf->SetY($contadorDeFilas); $pdf->SetX(20); $pdf->Cell(10, 4, utf8_decode(TOTAL PERCEPCION) , 0, b, 1); $pdf->SetX(60); $pdf->Cell(10, 4, number_format($total, 2, ., ,) , 0, L, 1); $contadorDeFilas = $contadorDeFilas + 5; /** * @example DEDUCCIONES description * **/ $p=0; $total=0; $sql = SELECT $db.dbo.av_concepto.idconcepto, clave, nombre, importe, dias, horas FROM $ejecucionArrayRepNomin[1] INNER JOIN $db.dbo.av_concepto ON $ejecucionArrayRepNomin[1].idconcepto = $db.dbo.av_concepto.idconcepto WHERE clavedelempleado=.$totalClaves[$i][0]. ORDER BY idconcepto; $deducciones = $this->sendQueryAndResultArray($sql); for($p=0;$pSetY($contadorDeFilasColumnaDos); $pdf->SetFont(helvetica, , 6); $pdf->SetX(105); $pdf->Cell(10, 4, $deducciones[$p][clave], 0, L, 1); $pdf->SetX(115); $pdf->Cell(40, 4, utf8_decode(utf8_encode($deducciones[$p][nombre])),0, L, 1); $pdf->SetX(155); $pdf->Cell(18, 4, number_format($deducciones[$p][importe], 2, ., ,), 0, L, 1); $pdf->SetX(173); $pdf->Cell(11, 4, number_format($deducciones[$p][dias], 2, ., ,), 0, L, 1); $pdf->SetX(184); $pdf->Cell(10, 4, number_format($deducciones[$p][horas], 2, ., ,), 0, L, 1); $total = $total + $deducciones[$p][importe]; $contadorDeFilasColumnaDos=$contadorDeFilasColumnaDos+3; /** *@author Eduardo Moises Lopez Rodriguez *@version 1.1 Payroll Reporter 2014 *@uses out of bound Here we need to validate in every iteration or * for cicle to our $pdf->GetY() if it is greatter than 270 we need * to print new sheet into PDF Document. *@category bug - fix **/ if($pdf->GetY()>260): $pdf->AddPage(); $row = $this->getNameCustomer($db); //$row[razonsocial] $pdf->SetFont(Helvetica, B, 8); $pdf->SetFillColor(252, 252, 253); $pdf->SetY(15); $pdf->SetX(10); $pdf->Cell(25, 6, Descripcion: , 0, L, 1); $pdf->SetX(30); $pdf->Cell(25, 6, utf8_decode(RESUMÉN DE NÓMINA POR EMPLEADO Y CONCEPTO), 0, L, 1); $pdf->SetX(140); $pdf->Cell(25, 6, Reporte: , 0, L, 1); $pdf->SetX(152); $pdf->Cell(25, 6, RepNomin , 0, L, 1); //segundo renglon $pdf->SetY(19); $pdf->SetX(10); $pdf->Cell(25, 6, utf8_decode(Razón Social: ), 0, L, 1); $pdf->SetX(30); $pdf->Cell(25, 6, trim(utf8_decode(utf8_encode($row[RazonSocial]))), 0, L, 1); $pdf->SetX(140); $pdf->Cell(25, 6, Fecha: . date(Y-d-m/h:m:s), 0, L, 1); $pdf->SetY(23); //obtencion de periodos $row = $this->getPeriodDates($db, $ejecucion); //conversion de fechas Date a String PHP $fechaInicio = substr($row[FechaInicio]->format(d-m-Y H:i:s), 0, 10); $fechaFinal = substr($row[FechaFin]->format(d-m-Y H:i:s), 0, 10); $pdf->SetX(10); $pdf->Cell(25, 6, utf8_decode(Periodo de Nomina: ), 0, L, 1); $pdf->SetX(38); $pdf->Cell(25, 6, trim(utf8_decode(utf8_encode($row[Nombre]))), 0, L, 1); $pdf->SetX(116); $pdf->Cell(25, 6, Del . UtilityReporter::monthLetter($fechaInicio) . al . UtilityReporter::monthLetter($fechaFinal), 0, L, 1); $pdf->SetFont(Helvetica, B, 8); $pdf->SetLineWidth(0.1); $pdf->Line(10, 30, 194, 30); ///HEADERS $pdf->SetY(30); $pdf->SetFont(helvetica, b, 7); $pdf->SetMargins(0, 0); $pdf->SetFillColor(255, 235, 242); $pdf->SetX(10); $pdf->Cell(10, 4, Clave, 1, 0, L, 1); $pdf->SetX(20); $pdf->Cell(40, 4, Concepto, 1, 0, L, 1); $pdf->SetX(60); $pdf->Cell(18, 4, Importe, 1, 0, L, 1); $pdf->SetX(78); $pdf->Cell(11, 4, utf8_decode(Días), 1, 0, L, 1); $pdf->SetX(89); $pdf->Cell(10, 4, Horas, 1, 0, L, 1); //Hardcode Small Second Headers $pdf->SetMargins(0, 0); $pdf->SetFillColor(255, 235, 242); $pdf->SetX(105); $pdf->Cell(10, 4, Clave, 1, 0, L, 1); $pdf->SetX(115); $pdf->Cell(40, 4, Concepto, 1, 0, L, 1); $pdf->SetX(155); $pdf->Cell(18, 4, Importe, 1, 0, L, 1); $pdf->SetX(173); $pdf->Cell(11, 4, utf8_decode(Días), 1, 0, L, 1); $pdf->SetX(184); $pdf->Cell(10, 4, Horas, 1, 0, L, 1); $pdf->Ln(); $contadorDeFilasColumnaDos=35; $flagDeduccion = true; endif; endfor; //TOTALES DEDUCCIONES $contadorDeFilasColumnaDos++; $pdf->SetLineWidth(0.1); $pdf->SetFont(Helvetica, B, 6); $pdf->Line(106, $contadorDeFilasColumnaDos, 187, $contadorDeFilasColumnaDos); $pdf->SetY($contadorDeFilasColumnaDos); $pdf->SetX(115); $pdf->Cell(10, 4, utf8_decode(TOTAL DEDUCCION), 0, L, 1); $pdf->SetX(155); $pdf->Cell(10, 4, number_format($total, 2, ., ,) , 0, L, 1); $contadorDeFilasColumnaDos=$contadorDeFilasColumnaDos + 4; /** * @example NETOS description * **/ $p=0; $total=0; $flag=false; $sql = SELECT $db.dbo.av_concepto.idconcepto, clave, nombre, importe, dias, horas FROM $ejecucionArrayRepNomin[2] INNER JOIN $db.dbo.av_concepto ON $ejecucionArrayRepNomin[2].idconcepto = $db.dbo.av_concepto.idconcepto WHERE clavedelempleado=.$totalClaves[$i][0]. ORDER BY idconcepto; $netos = $this->sendQueryAndResultArray($sql); for($p=0;$pSetY($contadorDeFilasColumnaDos); $pdf->SetFont(helvetica, , 6); $pdf->SetX(105); $pdf->Cell(10, 4, $netos[$p][clave], 0, L, 1); $pdf->SetX(115); $pdf->Cell(40, 4, utf8_decode(utf8_encode($netos[$p][nombre])),0, L, 1); $pdf->SetX(155); $pdf->Cell(18, 4, number_format($netos[$p][importe], 2, ., ,), 0, L, 1); $pdf->SetX(173); $pdf->Cell(11, 4, number_format($netos[$p][dias], 2, ., ,), 0, L, 1); $pdf->SetX(184); $pdf->Cell(10, 4, number_format($netos[$p][horas], 2, ., ,), 0, L, 1); $total = $total + $netos[$p][importe]; $contadorDeFilasColumnaDos=$contadorDeFilasColumnaDos+3; /** *@author Eduardo Moises Lopez Rodriguez *@version 1.1 Payroll Reporter 2014 *@uses out of bound Here we need to validate in every iteration or * for cicle to our $pdf->GetY() if it is greatter than 270 we need * to print new sheet into PDF Document. *@category bug - fix **/ if($pdf->GetY()>260): $pdf->AddPage(); $row = $this->getNameCustomer($db); //$row[razonsocial] $pdf->SetFont(Helvetica, B, 8); $pdf->SetFillColor(252, 252, 253); $pdf->SetY(15); $pdf->SetX(10); $pdf->Cell(25, 6, Descripcion: , 0, L, 1); $pdf->SetX(30); $pdf->Cell(25, 6, utf8_decode(RESUMÉN DE NÓMINA POR EMPLEADO Y CONCEPTO), 0, L, 1); $pdf->SetX(140); $pdf->Cell(25, 6, Reporte: , 0, L, 1); $pdf->SetX(152); $pdf->Cell(25, 6, RepNomin , 0, L, 1); //segundo renglon $pdf->SetY(19); $pdf->SetX(10); $pdf->Cell(25, 6, utf8_decode(Razón Social: ), 0, L, 1); $pdf->SetX(30); $pdf->Cell(25, 6, trim(utf8_decode(utf8_encode($row[RazonSocial]))), 0, L, 1); $pdf->SetX(140); $pdf->Cell(25, 6, Fecha: . date(Y-d-m/h:m:s), 0, L, 1); $pdf->SetY(23); //obtencion de periodos $row = $this->getPeriodDates($db, $ejecucion); //conversion de fechas Date a String PHP $fechaInicio = substr($row[FechaInicio]->format(d-m-Y H:i:s), 0, 10); $fechaFinal = substr($row[FechaFin]->format(d-m-Y H:i:s), 0, 10); $pdf->SetX(10); $pdf->Cell(25, 6, utf8_decode(Periodo de Nomina: ), 0, L, 1); $pdf->SetX(38); $pdf->Cell(25, 6, trim(utf8_decode(utf8_encode($row[Nombre]))), 0, L, 1); $pdf->SetX(116); $pdf->Cell(25, 6, Del . UtilityReporter::monthLetter($fechaInicio) . al . UtilityReporter::monthLetter($fechaFinal), 0, L, 1); $pdf->SetFont(Helvetica, B, 8); $pdf->SetLineWidth(0.1); $pdf->Line(10, 30, 194, 30); ///HEADERS $pdf->SetY(30); $pdf->SetFont(helvetica, b, 7); $pdf->SetMargins(0, 0); $pdf->SetFillColor(255, 235, 242); $pdf->SetX(10); $pdf->Cell(10, 4, Clave, 1, 0, L, 1); $pdf->SetX(20); $pdf->Cell(40, 4, Concepto, 1, 0, L, 1); $pdf->SetX(60); $pdf->Cell(18, 4, Importe, 1, 0, L, 1); $pdf->SetX(78); $pdf->Cell(11, 4, utf8_decode(Días), 1, 0, L, 1); $pdf->SetX(89); $pdf->Cell(10, 4, Horas, 1, 0, L, 1); //Hardcode Small Second Headers $pdf->SetMargins(0, 0); $pdf->SetFillColor(255, 235, 242); $pdf->SetX(105); $pdf->Cell(10, 4, Clave, 1, 0, L, 1); $pdf->SetX(115); $pdf->Cell(40, 4, Concepto, 1, 0, L, 1); $pdf->SetX(155); $pdf->Cell(18, 4, Importe, 1, 0, L, 1); $pdf->SetX(173); $pdf->Cell(11, 4, utf8_decode(Días), 1, 0, L, 1); $pdf->SetX(184); $pdf->Cell(10, 4, Horas, 1, 0, L, 1); $contadorDeFilasColumnaDos=35; $flagNetos = true; $pdf->Ln(); endif; endfor; //TOTALES NETOS $contadorDeFilasColumnaDos++; $pdf->SetLineWidth(0.1); $pdf->SetFont(Helvetica, B, 6); $pdf->Line(106, $contadorDeFilasColumnaDos, 187, $contadorDeFilasColumnaDos); $pdf->SetY($contadorDeFilasColumnaDos); $pdf->SetX(115); $pdf->Cell(10, 4, utf8_decode(TOTAL NETOS), 0, L, 1); $pdf->SetX(155); $pdf->Cell(10, 4, number_format($total, 2, ., ,), 0, L, 1); $contadorDeFilasColumnaDos=$contadorDeFilasColumnaDos + 4; /* VALIDAMOS CONTRA LAS BANDERAS PARA SABER A DONDE ASIGNAR LA SIGUIENTE FILA */ if($flagDeduccion == true || $flagNetos == true){ $contadorDeFilas=$contadorDeFilasColumnaDos; }else{ /* -- CONTADOR COLUMNAS LAST -- */ if($contadorDeFilasColumnaDos>$contadorDeFilas){ $contadorDeFilas=$contadorDeFilasColumnaDos; }else{ $contadorDeFilas=$contadorDeFilas; } } }
Posted on: Fri, 08 Aug 2014 15:18:06 +0000

Trending Topics



Recently Viewed Topics




© 2015