domingo, 22 de marzo de 2020

APLICACION BASE -TRANSACCION COMPRAS

Se coloca el codigo del proceso COMPRAS para su revisión y actualización a su proyecto base.

Dejar en comentarios su nombre, como verificación de asistencia y revisión de contenido académico  esto es obligatorio y ya costumbre en todas las entradas que revise, igual si necesita alguna explicación indicarla por ese medio Gracias

desde el maejo de FRAME:

<frameset cols="30%,*">
<frame name ="v1" src="compras.php">
<frame name ="v2" src="blanka.html">
</frameset>

 ventana de selección de productos   V1




            
]Ventana de mostrar descripción de producto como marca, unidad de medida, presentación V2



Ventana de almacenamiento de producto, donde se almacena a la tabla transacción los campos de:
codigo de producto, cantidad, precio, subtotal iva y total, en V"






PROGRAMACION DE CADA PROCESO:


 ventana de selección de productos   V1

Aqui mostramos los productos que se encuentran en la base de datos en un SELECT, se envia a la siguiente pantalla el codigo del producto seleccionado para mostrar luego sus detalles, muy importante enviar el codigo, caso contrario no podriamos realizar en la siguuiente pantalla el Select combinado a varias tablas



            
<HTML>
<head>
</head>
<script>
   function f_guardar()
   {
     // alert("hola 1");
      op.value=1;
  
   }
   function f_mostrar()
   {
     // alert("hola 2");
      op.value=2;   
   }
   function f_buscar()
   {
    //  alert("hola 3");
      op.value=3;   
   }
   
</script>
<BODY>

<H2> COMPRA DE PRODUCTOS</H2>
<form id="form1" name="form1" method=POST 
    action="P_COMPRAS.PHP" target="v2">
   seleccione producto: 
<?php
   echo "<select name='producto'>";
   include("abre_conexion.php");  
$result=mysql_query("select * from producto order by pro_nombre");
        while($row=mysql_fetch_array($result))  
{
    echo "<option value='". $row[0] . "'" .">". $row[1] . "</option>" ;
  
}
include("cierra_conexion.php");
echo "</select>";
?>   
  </p>
    <input type="hidden" name="op"  id="op">
<input type="SUBMIT" value="BUSCAR" NAME="BUSCAR" onClick="f_buscar()">
</form>
</BODY>
</HTML>


]Ventana de mostrar descripción de producto como marca, unidad de medida, presentación V2

Al tener el código de producto que viene de esta pantalla se puede realizar un select combinado para extraer la información de las diferentes tablas relacionadas a producto, luego se tiene que enviar igual el codigo del producto para el resumen final y almacenamiento en la tabla TRANSACCION, se lo realiza por medio de una caja de texto la impresión del codigo, ya que al utilizar esta herramienta dentro del formulario solo se extrae por el metodo POST, los datos que se tiene ademas: cantidad, precio, subtotal, iva y total, otra técnica podría haber sido utilizar objetos ocultos HIDDEN pero no es necesario, si ya se tiene en caja de texto el código.

tambien se calcula automaticamente el subtotal, iva y total, con una función que se la llama desde cada INPUT TYPE, se debe bloquear las cajas de texto anteriores para que el usuario no borre o modifique su contenido por medio del atributo READONLY, en cada caja que tiene cálculos. 

los campos de cantidad y precio se utiliza INPUT TYPE "NUMBER", para que solo se ingrese números y evitar validar datos ingresados con texto normal.


<html>
 <script>
 function multiplicar()
 {
v_pre = document.getElementById("precio").value;
v_can = document.getElementById("CANTIDAD").value;
v_sub = v_pre*v_can;
v_iva= v_sub/100*12;
v_total= v_sub + v_iva;
document.getElementById("SUBTOTAL").value = v_sub;
document.getElementById("IVA").value = v_iva;
document.getElementById("TOTAL").value = v_total;

 }
</script>
<body>
<h2> COMPRA DE PRODUCTOS </h2>
<H3>
<form name="form1" id="form1" method= "post"
      action="Pg_compras.php" target="v2">
<?php
    $opcion= $_POST["op"];
    $cod_pro=$_POST["producto"];
 //echo $opcion . "<br>";
// echo "codigo de producto:" . $cod_pro . "<br>";
 

 include("abre_conexion.php");
 $result=mysql_query("select pro_codigo, pro_nombre, mar_des from producto, marca where pro_cmarca= mar_codigo and pro_codigo='$cod_pro'");
    while($row=mysql_fetch_array($result))
 {
 // echo "CODIGO " . $row[0]  . "<br>";
  echo "PRODUCTO: ". $row[1]  . "<br>";
  echo "MARCA: ". $row[2]  . "<br>";
 }
 echo "<br>Codigo de Producto: ";
 echo "<input type='text' name='cod_producto' readonly value=" . $cod_pro . "> <br>";
 include("cierra_conexion.php");
 $fechaactual = getdate();
   // print_r($fechaactual);
    echo "Hoy es: $fechaactual[weekday], $fechaactual[mday] de $fechaactual[month] de $fechaactual[year]";


 ?>
 <P>

 PRECIO:
     <input type="number" name="precio" id="precio" value=0 onChange="multiplicar();">
  </label>
  <p>
<P>
 CANTIDAD:
     <input type="number" name="CANTIDAD" id="CANTIDAD" value=0 onChange="multiplicar();">
  </label>
  <p>
  SUBTOTAL:
     <input type="text" name="SUBTOTAL" id="SUBTOTAL" readonly>
  </label>
  <p>
  IVA:
     <input type="text" name="IVA" id="IVA" readonly>
  </label>
  <p>
   TOTAL:
     <input type="text" name="TOTAL" id="TOTAL" readonly>
  </label>
  <p>


 <input type='SUBMIT' value='guardar' name='guardar' >

 <p> <a href='index.html'>VOLVER A MENU </A>"


 </form>
 </H3>
</body>

 </html>

Ventana de almacenamiento de producto, donde se almacena a la tabla transacción los campos de:
codigo de producto, cantidad, precio, subtotal iva y total, en V"

almacenamiento a la tabla TRANSACCION con los datos de codigo de producto, codigo de tipo de transaccion que se envia el valor de 1, se  tiene como referencia que 1 sera compras, 2 ventas, 3 bajas, etc. solo falta almacenar la fecha y hora en los campos de transacción, igual manera actualizar siempre el codigo de transaccion se puso directamente un valor, esto no se lo realiza asi





<?php
 
echo  "<H1> RESUMEN de COMPRA <br> </H1>";
$v_precio= $_POST["precio"];
$v_cantidad= $_POST["CANTIDAD"];
$v_subtotal= $_POST["SUBTOTAL"];
$v_iva= $_POST["IVA"];
$v_total= $_POST["TOTAL"];
$cod_prod= $_POST["cod_producto"];
    echo "codigo Producto: " . $cod_prod . "<br>";
echo "precio " . $v_precio . "<br>";
echo "CANTIDAD: " . $v_cantidad . "<br>";
    echo "SUBTOTAL: " . $v_subtotal . "<br>";
echo "IVA: " . $v_iva . "<br>";
echo "TOTAL: " . $v_total . "<br>";


// Abrimos la conexion a la base de datos
include("abre_conexion.php");

$c1="INSERT INTO transaccion(tra_codigo, tra_ctipo,tra_cpro,tra_cantidad, tra_precio,tra_subtotal,tra_iva,tra_total) ";
$c2=" values (20,1,'$cod_prod','$v_cantidad','$v_precio','$v_subtotal','$v_iva','$v_total')";
     
$_GRABAR_SQL = $c1 . $c2;
    mysql_query($_GRABAR_SQL);

     // Cerramos la conexion a la base de datos
     include("cierra_conexion.php");
     echo "<p>Los datos han sido guardados con exito.</p>  ";

 ?> 

4 comentarios: