Giter VIP home page Giter VIP logo

Comments (10)

OD-n avatar OD-n commented on August 23, 2024 1

Exacto, el xml que se genera lo hago con LYCET y lo genera con 2 decimales, asi que no podría ser ese el problema, es por ello que no entiendo que guarde en la DB algo por ejemplo:
de 4547.03 que aparece en el xml guarde -> 4547.03254867; como dices, el tipo de dato puede que tenga que ver, pero aún no lo veo tan claro; si consigo algo lo estaré publicando por aqui, muchas gracias.

from sufel-angular.

giansalex avatar giansalex commented on August 23, 2024

Hola, no se hace redondeo, podrias revisar que valor se envia, abriendo la consola del navegador > Network

from sufel-angular.

OD-n avatar OD-n commented on August 23, 2024

Tienes razón, no redondea, seguiré buscando, solo me pasa eso al consultar documentos con montos que tengan xx.99, xx.98
o xx.01

1
2

tendría que ver que el xml se genere con mas decimales quiza?, muchas gracias de todos modos, sigo probando subiendo diferentes xml, gracias

from sufel-angular.

giansalex avatar giansalex commented on August 23, 2024

Existía un problema por el tipo de dato del campo total en la BD, podrías cambiarlo de float a double y ver si pasa.

from sufel-angular.

OD-n avatar OD-n commented on August 23, 2024

Al cambiar el tipo de dato como ejemplo me cambió el monto de un comprobante de: "599.99" a "599.989990234375"; cabe mencionar que ingresando ese total me muestra el mismo mensaje de documento no encontrado; podrías darme una breve explicación de como calcula ese monto?,

El xml generado se calcula con 2 decimales, tanto para los totales como para el precio de los items, quisiera saber si el total que llena en la DB lo toma como el total del xml que subimos, o hace un calculo de los items; no sé si me dejo entender, muchas gracias por la información del tipo de dató, por ello mi pregunta del cálculo del total.

from sufel-angular.

giansalex avatar giansalex commented on August 23, 2024

La información obtenida del xml no se altera bajo ninguna circunstancia, se guarda tal cual ha sido registrado en el comprobante.

from sufel-angular.

giansalex avatar giansalex commented on August 23, 2024

No se hace ningún cálculo, se guarda el monto tal cual esta en el XML. Pero puede ser un problema con el tipo de dato que se esta guardando.

from sufel-angular.

OD-n avatar OD-n commented on August 23, 2024

Probé redondear a 2 decimales antes de hacer el INSERT en la DB, asi que cambié la función:
public function setTotal($total) { return $this; }

por:

public function setTotal($total) { $this->total = round($total, 2); return $this; }

para que en la DB me guarde el monto en redondeado a 2 decimales, como mi sistema trabaja a 2 decimales no hay problema, no podría ser una solución cuando se entregen comprobantes con 3 decimales o mas.
Muchas gracias por la ayuda, no es lo optimo pero por el momento me funcionará, claro que necesitaré buscar la forma de hacer que funcione con otros decimales

from sufel-angular.

giansalex avatar giansalex commented on August 23, 2024

No creo que tengas que hacer eso, en el XML solo se debería enviar el total con un máximo de 2 decimales según la documentación de SUNAT.

from sufel-angular.

giansalex avatar giansalex commented on August 23, 2024

Hola @OD-n , revise el caso. El problema si era el tipo de dato, y para que no te guarde con decimales extra, debes definirlo con maximo 2 decimales DOUBLE (10,2)

Cambio hecho en giansalex/sufel-rest@f5d7a1f

from sufel-angular.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.