Como realizar operaciones matematicas

138 views
Skip to first unread message

Jorge I Pineda G

unread,
Jan 8, 2015, 11:15:49 PM1/8/15
to cakep...@googlegroups.com

Buenas noches amigos, regreso por aquí con un inconveniente, lo que pasa es que quiero realizar lo siguiente, quiero realizar una factura final de mi proyecto de estudio, y quisiera saber si hay alguna informacion sobre operaciones matemáticas  en cakephp. para explicarme mejor esta es mi base de datos simple de ejemplo

bueno en la tabla ventas unos campos estaban mal pero ya están corregidos(igual ojo que es un borrador nada mas ), use bake de cake para crear todo el mvc de este ejemplo pero lo que necesito es que en la tabla ventas almacenar la información final de la venta, por ejemplo tomar los precios de la tabla precios realizar cálculos con ellos(por ejemplo: tres entradas a recio de 3edad) y almacenarlos en un campo de la tabla, es posible hacer eso cuando la tabla no esta relacionada?... por ejemplo con precios, alguien me puede dar un lineamiento para realizar eso, el caso es que quisero hacer una tipo factura que calcule el numero de entradas por el costo ..etc

Les agradezco de antemano su ayuda


Pablo

unread,
Jan 9, 2015, 8:04:00 AM1/9/15
to cakep...@googlegroups.com

Tendrias a relacionar la tabla ventas con la tabla cartelera. Y de esa tabla traes la info de la pelicula y los precios relacionados a ella. Haces los cálculos y guardas.

--
Has recibido este mensaje porque estás suscrito al grupo "CakePHP en Español" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a cakephp-esp...@googlegroups.com.
Para publicar en este grupo, envía un correo electrónico a cakep...@googlegroups.com.
Visita este grupo en http://groups.google.com/group/cakephp-esp.
Para acceder a más opciones, visita https://groups.google.com/d/optout.

Jorge I Pineda G

unread,
Jan 9, 2015, 9:51:34 AM1/9/15
to cakep...@googlegroups.com
Muchas gracias  Pablo, lo que pasa es que ya esta relacionada, quisiera saber si no hay un manual en donde se explique como hacer operaciones matemáticas o un ejemplo, he buscado en todas partes y nada...osea quiero llamar los datos y por ejemplo escoger una película, que la película escogida se almacene  en la base, pero que a su vez hacer el calculo del precio x cantidad y enviarlo al campo total... mas o menos eso quiero hace, de ahi ya mlos datos los puedo sacar con las relaciones, pero lo que trato de averiguar es como manejar esos datos. si quieren puedo subir el código 

Pablo

unread,
Jan 9, 2015, 10:09:20 AM1/9/15
to cakep...@googlegroups.com
subi el codigo, dale. Igual lo veo simple, una vez que llamas a la pelicula solicitada podes hacer un calculo simple con una variable. Ej:

$x = $precio * $cantidad;

Y llenas el campo total con el valor de $x. Es simple matematica. No hay un manual, usa la variable como ecuacion.



El 9 de enero de 2015, 11:51, Jorge I Pineda G <jorge....@gmail.com> escribió:
Muchas gracias  Pablo, lo que pasa es que ya esta relacionada, quisiera saber si no hay un manual en donde se explique como hacer operaciones matemáticas o un ejemplo, he buscado en todas partes y nada...osea quiero llamar los datos y por ejemplo escoger una película, que la película escogida se almacene  en la base, pero que a su vez hacer el calculo del precio x cantidad y enviarlo al campo total... mas o menos eso quiero hace, de ahi ya mlos datos los puedo sacar con las relaciones, pero lo que trato de averiguar es como manejar esos datos. si quieren puedo subir el código 

--

Jorge I Pineda G

unread,
Jan 10, 2015, 8:02:45 AM1/10/15
to cakep...@googlegroups.com
Muchas gracias por responder, bueno mas o menos la vista es así:


Lo que yo quiero es ir poniendo las cantidades y luego hacer la operación con respecto al precio hacer un solo calculo y colocarlo en el total, 

La base de datos es esta:

y este es el código de la vista: add.ctp

<div class="ventas form">

<?php echo $this->Form->create('Venta'); ?>

<fieldset>

<legend><?php echo __('PROCESO DE COMPRA'); ?></legend>

<?php

echo $this->Form->input('nombre');

echo $this->Form->input('apellido');

echo $this->Form->input('cedula');

echo $this->Form->input('direccion');

echo $this->Form->input('mail');

echo $this->Form->input('telefono');

echo $this->Form->input('tarjeta');

echo $this->Form->input('numtarjeta');

echo __('<legend>SELECCIONE SU PELICULA</legend>'); 

echo $this->Form->input('cartelera_id',array('label' => 'Seleccione su pelicula'));//el array permite modificar los atributos del formulario en este caso el label para modificar el nombre del campo que bake arroja de forma magica

echo $this->Form->input('cant_adulto', array('label' => 'Cantidad de boletos - Precio normal $ 7,50'));

echo $this->Form->input('cant_niño', array('label' => 'Cantidad de boletos - Precio niños/ancianos $ 5,50'));

echo $this->Form->input('cant_discapacitado', array('label' => 'Cantidad de boletos - Precio discapacitados $ 4,90'));

echo __('<legend>SELECCIONE SU COMBO</legend>'); 

echo $this->Form->input('combo_id');

echo $this->Form->input('numcombo', array('label' => 'Cantidad de combos - Precio discapacitados $ 12,90'));

echo $this->Form->input('total');

?>



</fieldset>

<?php echo $this->Form->end(__('Guardar')); ?>

</div>

<div class="actions">

<h3><?php echo __('Acciones'); ?></h3>

<ul>


<li><?php echo $this->Html->link(__('Listar Ventas'), array('action' => 'index')); ?></li>

<li><?php echo $this->Html->link(__('Listar Clientes'), array('controller' => 'clientes', 'action' => 'index')); ?> </li>

<li><?php echo $this->Html->link(__('Nuevo Cliente'), array('controller' => 'clientes', 'action' => 'add')); ?> </li>

<li><?php echo $this->Html->link(__('Listar Combos'), array('controller' => 'combos', 'action' => 'index')); ?> </li>

<li><?php echo $this->Html->link(__('Nuevo Combo'), array('controller' => 'combos', 'action' => 'add')); ?> </li>

<li><?php echo $this->Html->link(__('Listar Carteleras'), array('controller' => 'carteleras', 'action' => 'index')); ?> </li>

<li><?php echo $this->Html->link(__('Nueva Cartelera'), array('controller' => 'carteleras', 'action' => 'add')); ?> </li>

</ul>

</div>

 


Miguel Somar

unread,
Jan 10, 2015, 8:30:52 AM1/10/15
to CakePHP en Español
Hola mira los métodos callback, te podrían servir para hacer los cálculos

Pablo

unread,
Jan 10, 2015, 8:31:35 AM1/10/15
to cakep...@googlegroups.com

Entiendo, si queres q aparezca mientras está llenando tendrias q usar javascript. Jquery o lo q te guste. E ir sumando a medida q van completando.

Igual volveria a hacer el calculo como te comente anteriormente cuando le das salvar.

Espero te ayude.
Saludos
Pablo

Jorge I Pineda G

unread,
Jan 10, 2015, 9:18:27 AM1/10/15
to cakep...@googlegroups.com

Y tal vez en php no saben como funciona en cake así no se vea el calculo, quisiera saber si funciona con algún tipo de lógica o usando php nativo y como haría para hacerlo en php nativo y tomar  los datos del formulario  y hacerlo por medio del boton guarda es la parte que no entiendo...  disculpen es que estoy experimentando y no hay mucha bibliográfica de este framework, al menos 
 

alexander orejuela

unread,
Jan 12, 2015, 7:17:16 AM1/12/15
to cakep...@googlegroups.com
Para realizar lo que deseas debe hacerlo con javascript.. operaciones del lado del cliente y luego;las pasas.como value a los campos y las guardas

Jorge I Pineda G

unread,
Jan 12, 2015, 7:25:29 AM1/12/15
to cakep...@googlegroups.com
Bueno gracias voy a buscar como se hace , algún manual o ejemplo que me recomiendes .

Pedro Arana

unread,
Jan 12, 2015, 7:21:05 PM1/12/15
to cakep...@googlegroups.com
CakePHP es un framework para buscar y presentar datos , la logica de
negocio se maneja aparte .
¿Que sabes manejar ademas de cakePHP ?
¿En donde estas haciendo los calculos?

¿Son para mostrarlos al usuario conforme va capturando?
Javascript : http://www.webreference.com/programming/javascript/jkm4/index.html
Jquery (Framework de javascript ) :
http://www.sitepoint.com/basic-jquery-form-validation-tutorial/

Si es despues de dar Enviar pero antes de guardar en la base de datos,
php puro y duro en el controlador (imagino que en el metodo add o edit
)

function add() {
if (!empty($this->data)) {

// Por aqui haces el calculo de tus descuentos
// $this->data['Ventas'] deberia de traer las ventas calculadas

if ($this->Post->saveAll($this->data)) {
$this->Session->setFlash('Your post has been saved.');
$this->redirect(array('action' => 'index'));
}
}}


Si los calculos son DESPUES de guardar en la base de datos Funciones
de agregacion de mysql

https://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html


Saludos


Pedro Arana
> --
> Has recibido este mensaje porque estás suscrito al grupo "CakePHP en
> Español" de Grupos de Google.
> Para anular la suscripción a este grupo y dejar de recibir sus mensajes,
> envía un correo electrónico a cakephp-esp...@googlegroups.com.
> Para publicar en este grupo, envía un correo electrónico a
> cakep...@googlegroups.com.
> Visita este grupo en http://groups.google.com/group/cakephp-esp.
> Para acceder a más opciones, visita https://groups.google.com/d/optout.



--
Beware of black-and-white solutions to multi-hued problems.

Jorge I Pineda G

unread,
Jan 15, 2015, 7:34:09 PM1/15/15
to cakep...@googlegroups.com
Solucionado, próximamente estaré publicando como lo resolví
 
 
descarga (1).jpg
Reply all
Reply to author
Forward
0 new messages