Calcular IVA y Total de una Factura y mostrarla en el formulario.

2,145 views
Skip to first unread message

Flako82

unread,
Sep 23, 2010, 12:10:30 AM9/23/10
to symfony-es
Hola amigos necesito ayuda, lo que pasa es que estoy haciendo el
ingreso de facturas, donde al ingresar o calcular el valor neto, se
debe calcular el valor Iva y el total.

La idea es que al momento de ingresar el neto en el formulario, se
calcule el valor IVA y el total, además se muestren en el momento.

Si me pudieran ayudar se los agradecería mucho amigos, trabajo con
symfony 1.4 y doctrine.

Daniel González Cerviño

unread,
Sep 23, 2010, 2:52:37 AM9/23/10
to symfo...@googlegroups.com

metele jquery al pack

--
sent from android

> --
> Has recibido este mensaje porque estás suscrito al grupo "symfony-es" de Grupos de Google.
> Para publicar una entrada en este grupo, envía un correo electrónico a symfo...@googlegroups.com.
> Para anular tu suscripción a este grupo, envía un correo electrónico a symfony-es+...@googlegroups.com
> Para tener acceso a más opciones, visita el grupo en http://groups.google.com/group/symfony-es?hl=es.
>

Pablo Braulio

unread,
Sep 23, 2010, 3:20:09 AM9/23/10
to symfo...@googlegroups.com
Supongo que a lo que te referir�s es que a que cuando el usuario
introduzca datos para el c�lculo (cantidad y precio) en el formulario,
se actualicen campos antes de procesarlo como el total, la base
imponible, el importe del iva e importe total factura.

Si estoy en lo cierto, ya te han comentado que puedes usar jquery.

> sent from android
>
> > Hola amigos necesito ayuda, lo que pasa es que estoy haciendo el
> > ingreso de facturas, donde al ingresar o calcular el valor neto, se
> > debe calcular el valor Iva y el total.
> >
> > La idea es que al momento de ingresar el neto en el formulario, se

> > calcule el valor IVA y el total, adem�s se muestren en el momento.
> >
> > Si me pudieran ayudar se los agradecer�a mucho amigos, trabajo con


> > symfony 1.4 y doctrine.
> >
> > --

> > Has recibido este mensaje porque est�s suscrito al grupo "symfony-es"
> de Grupos de Google.
> > Para publicar una entrada en este grupo, env�a un correo electr�nico
> a symfo...@googlegroups.com <mailto:symfo...@googlegroups.com>.
> > Para anular tu suscripci�n a este grupo, env�a un correo electr�nico
> a symfony-es+...@googlegroups.com
> <mailto:symfony-es%2Bunsu...@googlegroups.com>
> > Para tener acceso a m�s opciones, visita el grupo en
> http://groups.google.com/group/symfony-es?hl=es.
> >
>
> --
> Has recibido este mensaje porque est�s suscrito al grupo "symfony-es" de
> Grupos de Google.
> Para publicar una entrada en este grupo, env�a un correo electr�nico a
> symfo...@googlegroups.com.
> Para anular tu suscripci�n a este grupo, env�a un correo electr�nico a
> symfony-es+...@googlegroups.com
> Para tener acceso a m�s opciones, visita el grupo en
> http://groups.google.com/group/symfony-es?hl=es.


--
Saludos cordiales.
Pablo.

Si lo reenv�as, ten la precauci�n de borrar los datos de procedencia que
encabezar�an tu reenv�o � empezando por mi direcci�n de correo
electr�nico - . Coloca siempre las direcciones de tus contactos en el
campo <CCO> para que viajen discretas, no en el campo <Para> ni en
el<CC>. De esa forma nadie que lo reciba tendr� constancia de las se�as
de los dem�s destinatarios a los que tambi�n se remite. Todo ello a fin
de evitar que nadie se aproveche de todas las direcciones que se van
acumulando al pasar de buz�n a buz�n para el lanzamiento de correo
basura y otras indeseadas lindezas. Aparte claro est� de garantizar la
privacidad.

Gracias.

Sergio Flores

unread,
Sep 23, 2010, 8:54:11 AM9/23/10
to symfo...@googlegroups.com
El día 23 de septiembre de 2010 04:20, Pablo Braulio
<bru...@gmail.com> escribió:
> Supongo que a lo que te referirás es que a que cuando el usuario introduzca
> datos para el cálculo (cantidad y precio) en el formulario, se actualicen

> campos antes de procesarlo como el total, la base imponible, el importe del
> iva e importe total factura.
>
> Si estoy en lo cierto, ya te han comentado que puedes usar jquery.
>
>> sent from android
>>
>>  > Hola amigos necesito ayuda, lo que pasa es que estoy haciendo el
>>  > ingreso de facturas, donde al ingresar o calcular el valor neto, se
>>  > debe calcular el valor Iva y el total.
>>  >
>>  > La idea es que al momento de ingresar el neto en el formulario, se
>>  > calcule el valor IVA y el total, además se muestren en el momento.
>>  >
>>  > Si me pudieran ayudar se los agradecería mucho amigos, trabajo con

>>  > symfony 1.4 y doctrine.
>>  >
>>  > --
>>  > Has recibido este mensaje porque estás suscrito al grupo "symfony-es"
>> de Grupos de Google.
>>  > Para publicar una entrada en este grupo, envía un correo electrónico
>>  > Para anular tu suscripción a este grupo, envía un correo electrónico
>> a symfony-es+...@googlegroups.com
>> <mailto:symfony-es%2Bunsu...@googlegroups.com>
>>  > Para tener acceso a más opciones, visita el grupo en
>> http://groups.google.com/group/symfony-es?hl=es.
>>  >
>>
>> --
>> Has recibido este mensaje porque estás suscrito al grupo "symfony-es" de
>> Grupos de Google.
>> Para publicar una entrada en este grupo, envía un correo electrónico a
>> symfo...@googlegroups.com.
>> Para anular tu suscripción a este grupo, envía un correo electrónico a
>> symfony-es+...@googlegroups.com
>> Para tener acceso a más opciones, visita el grupo en

>> http://groups.google.com/group/symfony-es?hl=es.
>
>
> --
> Saludos cordiales.
> Pablo.
>
> Si lo reenvías, ten la precaución de borrar los datos de procedencia que
> encabezarían tu reenvío – empezando por mi dirección de correo electrónico -

> . Coloca siempre las direcciones de tus contactos en el campo <CCO> para que
> viajen discretas, no en el campo <Para> ni en el<CC>. De esa forma nadie que
> lo reciba tendrá constancia de las señas de los demás destinatarios a los
> que también se remite. Todo ello a fin de evitar que nadie se aproveche de
> todas las direcciones que se van acumulando al pasar de buzón a buzón para

> el lanzamiento de correo basura y otras indeseadas lindezas. Aparte claro
> está de garantizar la privacidad.
>
>
>
> Gracias.
>
> --
> Has recibido este mensaje porque estás suscrito al grupo "symfony-es" de
> Grupos de Google.
> Para publicar una entrada en este grupo, envía un correo electrónico a
> symfo...@googlegroups.com.
> Para anular tu suscripción a este grupo, envía un correo electrónico a
> symfony-es+...@googlegroups.com
> Para tener acceso a más opciones, visita el grupo en
> http://groups.google.com/group/symfony-es?hl=es.
>
>

Hola!

No le veo le ventaja de usar jQuery, puedes usar Javascript
directamente para mantenerlo simple.

Si no sabes como hacerlo por favor publica tu form y qué cálculos
deseas realizar.

Saludos!

Pablo Braulio

unread,
Sep 23, 2010, 9:02:47 AM9/23/10
to symfo...@googlegroups.com
�Javascript mas simple de jQuery?. Discrepo.

�Ventajas?, compatibilidad con multiples navegadores, por ejemplo.

>
> Hola!
>
> No le veo le ventaja de usar jQuery, puedes usar Javascript
> directamente para mantenerlo simple.
>

> Si no sabes como hacerlo por favor publica tu form y qu� c�lculos
> deseas realizar.
>
> Saludos!
>


--
Saludos cordiales.
Pablo.

Si lo reenv�as, ten la precauci�n de borrar los datos de procedencia que

encabezar�an tu reenv�o � empezando por mi direcci�n de correo

electr�nico - . Coloca siempre las direcciones de tus contactos en el

campo <CCO> para que viajen discretas, no en el campo <Para> ni en

el<CC>. De esa forma nadie que lo reciba tendr� constancia de las se�as

de los dem�s destinatarios a los que tambi�n se remite. Todo ello a fin

de evitar que nadie se aproveche de todas las direcciones que se van

acumulando al pasar de buz�n a buz�n para el lanzamiento de correo
basura y otras indeseadas lindezas. Aparte claro est� de garantizar la
privacidad.

Gracias.

Jorge Molas

unread,
Sep 23, 2010, 9:10:57 AM9/23/10
to symfo...@googlegroups.com
Me encantaria ver un ejemplo de solucion a esta pregunta con Jquery, mas que nada para ver como aplicarlo a mano (sin pluglins). Tmb soy nuevo en SF

Sergio Flores

unread,
Sep 23, 2010, 9:22:10 AM9/23/10
to symfo...@googlegroups.com
El día 23 de septiembre de 2010 10:10, Jorge Molas
<giorgio...@gmail.com> escribió:

> Me encantaria ver un ejemplo de solucion a esta pregunta con Jquery, mas que
> nada para ver como aplicarlo a mano (sin pluglins). Tmb soy nuevo en SF
>
> --
> Has recibido este mensaje porque estás suscrito al grupo "symfony-es" de
> Grupos de Google.
> Para publicar una entrada en este grupo, envía un correo electrónico a
> symfo...@googlegroups.com.
> Para anular tu suscripción a este grupo, envía un correo electrónico a
> symfony-es+...@googlegroups.com
> Para tener acceso a más opciones, visita el grupo en
> http://groups.google.com/group/symfony-es?hl=es.
>

Yo creo que en este tipo de cálculos es más simple y liviano utilizar
Javascript puro. A menos que ya se utilice jQuery para otra cosa en el
proyecto justificaría su uso en este cálculo.

Es sólo una preferencia personal, cada uno sabrá cuantos KBs
adicionales utilizará para cada cosa!

Saludos!

Sergio Flores

unread,
Sep 23, 2010, 9:25:54 AM9/23/10
to symfo...@googlegroups.com
El día 23 de septiembre de 2010 10:22, Sergio Flores
<ser...@gmail.com> escribió:

No se olviden que jQuery no deja de ser Javascript! Y en este
requisito sólo hay que hacer cálculos matemáticos igualmente que como
se haría con jQuery, luego para acceder al DOM (para recoger y asignar
los valores) se puede utilizar el método "getElementById" que es, como
todos sabemos, ampliamente soportado por los navegadores.

Pero cada uno tiene su manera de hacer las cosas, yo comparto la mía! Saludos!

Jose Regalado

unread,
Sep 23, 2010, 10:52:10 AM9/23/10
to symfo...@googlegroups.com
El día 23 de septiembre de 2010 08:55, Sergio Flores

El asunto es que a estas alturas de la vida, el que no use symfony u
otro FW, esta desfasado, donde queda la escalabilidad?.
quien sabe usar jQ y sabe de su potencia pues no se la quitará de
encima, recuerde: do more, write less.
KB mas o KB menos en este momento, simplemente no es relevante.
jQuery es tu solución, te garantza que no te dolerá, ni tendrás que
estar reescribiendo la aplicación cada rato.

Pero en mi opinión muy muy muy personal, un formulario web para
facturación, es totalmente deficiente, a menos que hagas una factura
cada media hora.

--
José Luis Regalado
bashman
Linux User nº 280381

Juan Manuel

unread,
Sep 23, 2010, 10:56:49 AM9/23/10
to symfony-es
No se olviden que el topic del thread es "Calcular IVA y Total de una
Factura y mostrarla en el formulario." y no debatir si implementar
jQuery es mejor que hacerlo nativamente con js.

On 23 sep, 11:52, Jose Regalado <djd...@gmail.com> wrote:
> El día 23 de septiembre de 2010 08:55, Sergio Flores
> <ser...@gmail.com> escribió:
>
>
>
> > El día 23 de septiembre de 2010 10:22, Sergio Flores
> > <ser...@gmail.com> escribió:
> >> El día 23 de septiembre de 2010 10:10, Jorge Molas
> >> <giorgio.gatu...@gmail.com> escribió:

Jorge Molas

unread,
Sep 23, 2010, 11:12:48 AM9/23/10
to symfo...@googlegroups.com
Apoyo a Juan Manuel, al final nadie tiro una linea, solo discusiones de que es mejor!

Claudio Barra

unread,
Sep 23, 2010, 12:39:06 PM9/23/10
to symfo...@googlegroups.com
Muchas Gracias chicos, me lanzaré a hacerlo con Javascript o Jquery jajajajaja...saludos y gracias por su buena onda.

El 23 de septiembre de 2010 11:12, Jorge Molas <giorgio...@gmail.com> escribió:
Apoyo a Juan Manuel, al final nadie tiro una linea, solo discusiones de que es mejor!

--

Sergio Flores

unread,
Sep 24, 2010, 3:59:09 PM9/24/10
to symfo...@googlegroups.com
El día 23 de septiembre de 2010 10:39, Claudio Barra
<peloteroschil...@gmail.com> escribió:

Claudio:

Si quieres que te ayudemos con el código, ya sea con o sin jQuery,
publica tu HTML y lo que necesitas calcular!

Saludos a todos!

Claudio Barra

unread,
Sep 24, 2010, 4:27:37 PM9/24/10
to symfo...@googlegroups.com
Ok en la tarde lo enviaré.

Claudio Barra

unread,
Sep 27, 2010, 5:28:02 PM9/27/10
to symfo...@googlegroups.com
Bueno he retomado este modulo de la factura de compra q quiero q salga el Iva automático una vez que ingrese en el campo neto el valor.

Bueno el código de la función de javascript q estoy haciendo es la siguiente en la vista.

<?php use_stylesheets_for_form($form) ?>
<?php use_javascripts_for_form($form) ?>

<script language="javascript" type="text/javascript">
function calcularIva(neto){

    var Iva = parseint((neto*19)/100);
    return Iva;
}
</script>

...

Luego en la parte de la vista para los campos del formulario tengo esto...

<tr>
        <th><?php echo $form['neto_fc']->renderLabel() ?></th> /*campo del valor neto*/
        <td>
          <?php echo $form['neto_fc']->renderError() ?>
          <?php echo $form['neto_fc']->render(array('onkeyup'=>'calcularIva($this.value)')) ?>
        </td>
      </tr>
      <tr>
        <th><?php echo $form['iva_fc']->renderLabel() ?></th>/*campo del valor Iva*/
        <td>
          <?php echo $form['iva_fc']->renderError() ?>
          <?php echo $form['iva_fc']->render(array('readOnly' => 'readOnly')) ?>
        </td>


Bueno lo que pasa es que no logro que funcione jejeje...sé q lo más probable q pueda tener todo malo, pero espero me puedan ayudar por favor, he hecho como 10 formas la función del calculo del iva jeje.

Para más información uso Symfony 1.4 y doctrine.

Sergio Flores

unread,
Sep 27, 2010, 7:33:45 PM9/27/10
to symfo...@googlegroups.com
El día 27 de septiembre de 2010 18:28, Claudio Barra
<peloteroschil...@gmail.com> escribió:
> --
> Has recibido este mensaje porque estás suscrito al grupo "symfony-es" de
> Grupos de Google.
> Para publicar una entrada en este grupo, envía un correo electrónico a
> symfo...@googlegroups.com.
> Para anular tu suscripción a este grupo, envía un correo electrónico a
> symfony-es+...@googlegroups.com
> Para tener acceso a más opciones, visita el grupo en
> http://groups.google.com/group/symfony-es?hl=es.
>

Al parecer hay cosas que modificar..., a ver el html generado por favor.

Claudio Barra

unread,
Sep 27, 2010, 7:51:13 PM9/27/10
to symfo...@googlegroups.com
Sergio bueno no te mostrare todo, ya q es muy largo y aparece mucho codigo por el widget de fecha, pero te mostraré lo importante jeje..

<script type="text/javascript" src="/js/jquery-1.3.2.min.js"></script>
<script type="text/javascript" src="/js/jquery-ui-1.7.3.custom.min.js"></script>

<script type="text/javascript">
function calcularIva(neto){

    var Iva = parseint((neto*19)/100);
    return Iva;
}
</script>

.....

<form action="/compras/create" method="post" >

....

<tr> <th><label for="factura_compra_neto_fc">Neto :</label></th> <td> <input class="text" type="text" name="factura_compra[neto_fc]" onkeyup="calcularIva($this.value)" id="factura_compra_neto_fc" /> </td> </tr> <tr> <th><label for="factura_compra_iva_fc">Iva fc</label></th> <td> <input type="text" name="factura_compra[iva_fc]" readOnly="readOnly" id="factura_compra_iva_fc" /> </td> </tr> <tr> <th><label for="factura_compra_estado_fc">Estado de Factura :</label></th> <td> <select class="text" name="factura_compra[estado_fc]" id="factura_compra_estado_fc"> <option value="0">Impaga</option> <option value="1">Pagada</option> <option value="2">Nula</option> </select> </td> </tr> </tbody> </table> </form>

Bueno eso es lo que genera el html...espero me puedas ayudar...pq ya he tratado de hacer esta cosa hacer un buen rato y no logró q funcione, estoy seguro q el error debe ser una tontera jajaja

Claudio Barra

unread,
Sep 27, 2010, 10:22:44 PM9/27/10
to symfo...@googlegroups.com
He logrado solucionar el problema jejeje...lo que puse finalmente fue lo siguiente...

<script type="text/javascript">

function calcularIva(iva, neto){

   
    iva.value= parseInt((neto*19)/100);
   
}


</script>

y en el campo Iva puse lo siguiente...

<?php echo $form['iva_fc']->render(array('readOnly'=>'readOnly', 'onFocus'=> 'calcularIva(this, factura_compra_neto_fc.value)')) ?>


Lamentablemente no me salió lo que yo quería que era q se calculara mientras iba ingresando el neto, pero igual me sirve...saludos y gracias a los q se dieron el tiempo para ayudarme.




Sergio Flores

unread,
Sep 28, 2010, 7:24:58 AM9/28/10
to symfo...@googlegroups.com
El día 27 de septiembre de 2010 23:22, Claudio Barra
<peloteroschil...@gmail.com> escribió:
> --
> Has recibido este mensaje porque estás suscrito al grupo "symfony-es" de
> Grupos de Google.
> Para publicar una entrada en este grupo, envía un correo electrónico a
> symfo...@googlegroups.com.
> Para anular tu suscripción a este grupo, envía un correo electrónico a
> symfony-es+...@googlegroups.com
> Para tener acceso a más opciones, visita el grupo en
> http://groups.google.com/group/symfony-es?hl=es.
>

<script type="text/javascript">
function calcularIva(neto){

document.getElementById('factura_compra_iva_fc').value =
parseint((neto*19)/100);

}
</script>
...


<input class="text" type="text" name="factura_compra[neto_fc]"

onkeyup="calcularIva(this.value)" id="factura_compra_neto_fc" />

Prueba a ver si asi funciona de la forma que querías! Saludos!

Claudio Barra

unread,
Sep 28, 2010, 1:51:03 PM9/28/10
to symfo...@googlegroups.com
Muchas Gracias Sergio, ahora está todo solucionado, muchas gracias por tu muy buena disposición.

Saludos.

Ahora estoy comenzando con el show de agregar los detalles de la Factura de venta, pero tengo una idea de como hacerla, usando javascript y moodalbox jajaja...

Sergio Flores

unread,
Sep 28, 2010, 1:54:26 PM9/28/10
to symfo...@googlegroups.com
El día 28 de septiembre de 2010 14:51, Claudio Barra
<peloteroschil...@gmail.com> escribió:

A experimentar que de allí sacarás lo mejor de ti! :P

Y no olvides, que si bien en este caso muy simple no se utilizó
jQuery, en desarrollos más complejos (sobre todo en el tratamiento de
DOM y AJAX) puedes utilizarlo para ahorrarte dolores de cabeza!

Saludos y hasta luego!

Reply all
Reply to author
Forward
0 new messages