Adquiere este curso para tener acceso a todas las lecciones
Comprar curso16. Dar formato a las fechas en tus reportes
En este capítulo aprenderás a manejar las fechas en Laravel Excel. Aprenderás cómo dar formato a las fechas y personalizarlas según tus necesidades utilizando diferentes métodos. Además, te enseñarán a trabajar con diferentes zonas horarias y a convertir fechas a diferentes formatos de fecha y hora. Con este conocimiento, podrás mejorar la presentación de tus reportes y facilitar su comprensión por parte de los usuarios.
4 comentarios
Inicia sesión para comentar
Comentarios:
-
Carlos Moreno hace 1 año
Buenos días saludos, Amigo y si hay mas de un campo fecha? se declara una funcion para cada campo?
-
Martin Aquino hace 1 año
Si alguno le sirve el tema fecha lo manejé con Carbon. Primero declaré el formato antes de retornar los valores. $fechaNacimiento = $invoice->fecha_nacimiento ? Carbon::parse($invoice->fecha_nacimiento)->format('d/m/Y') : ''; esta condicion además de formatear en d/m/Y evalúa si hay un valor sino lo pone vacío. en el return directamente llamo a la variable: $fechaNacimiento,
-
Armando Oliveira hace 1 año
Gracias Víctor, eres grande.
Ahora para los que siguen el curso y no tiene conocimiento de programación como yo. Y desean usar el Date::dateTimeToExcel y generan el error que ven en el comentario anterior, Estos se soluciona como dice Víctor con una condicional. Yo logre solucionarlo así:
Imaginen que adicional a lo indicado Víctor en el curso, tiene que incluir una fecha de pago de la factura, que puede ser null o no,
Deben colocar en el array del método mapeo (map) estos:
$invoice->datepay = isset(invoice->datepay) ? Date::dateTimeToExcel(invoice->datepay) : $invoice->datepay,
Si consideran que existe mejor forma, por favor comentar…
Esto me costo horas hacerlo, gracias nuevamente Víctor por la ayuda!!!
-
Victor Arana Flores hace 1 año
Hola Armando, gracias por el aporte :D
-
-
Armando Oliveira hace 1 año
Víctor: Al realizar el mapero no tengo problemas con el cambio de fecha con el Date::dateTimeToExcel($invoice->created_at), Me la trae sin problema y se realiza puede usar en Excel. Ahora el problema lo tengo cuando created_at tiene un campo nulo, al hacer el mapeo genera este error
PhpOffice\PhpSpreadsheet\Shared\Date::dateTimeToExcel(): Argument #1 ($dateValue) must be of type DateTimeInterface, null given, called in C:\xampp\htdocs\pruebas\centralNew\app\Exports\OrderExport.php on line 90
No sé cómo solucionar este problema. He intentado pasar otro valor o que no emita un null y no he podido.
-
Victor Arana Flores hace 1 año
Hola Armando. Ponlo dentro de una condicional para que no intente transformarlo cuando llegue el campo null
-