Hola amigos!!!
con la poca experiencia que tengo programando en php
logre hacer un codigo , para ingresar compras realizadas por un usuario
varia segun la moneda en que este registrado el articulo y en que se registro la compra
funciona bien, pero para mi es demasiado largo y seguramente estoy haciendo algo mal (no me tengo mucha confianza jajaja) o algo demas
la pregunta es, ustedes me podrian decir si se puede simplificar o eliminar algo?
Saludos y muchas gracias!!!
Código PHP:
Ver originalif ($compra_arti_id) {
for ($i = 0; $i < sizeof($compra_arti_id); $i++) { $sql1 = "SELECT A.arti_id,A.moneda,M.mone_id,M.moneda_venta,M.moneda_incremento FROM articulos A INNER JOIN monedas M ON A.moneda=M.mone_id WHERE A.arti_id='" . $compra_arti_id[$i] . "'";
$fi = $row['moneda_venta'] + $row['moneda_incremento'];
}
$final = $compra_precio[$i] * $compra_coti / $fi;
$sql2 = "UPDATE articulos SET arti_costo = '" . $final . "', ";
$sql2 .= "gar_art = '" . $compra_gar_art[$i] . "', ";
$sql2 .= "proce = '" . $compra_proce[$i] . "', ";
switch ($stk_suc[$i]) {
case 1:
$sql2 .= "stk1 = stk1 + '" . $compra_cantidad[$i] . "' ";
break;
case 2:
$sql2 .= "stk2 = stk2 + '" . $compra_cantidad[$i] . "' ";
break;
case 3:
$sql2 .= "stk3 = stk3 + '" . $compra_cantidad[$i] . "' ";
break;
case 4:
$sql2 .= "stk4 = stk4 + '" . $compra_cantidad[$i] . "' ";
break;
case 5:
$sql2 .= "stk5 = stk5 + '" . $compra_cantidad[$i] . "' ";
break;
case 6:
$sql2 .= "stk6 = stk6 + '" . $compra_cantidad[$i] . "' ";
break;
case 7:
$sql2 .= "stk7 = stk7 + '" . $compra_cantidad[$i] . "' ";
break;
case 8:
$sql2 .= "stk8 = stk8 + '" . $compra_cantidad[$i] . "' ";
break;
case 9:
$sql2 .= "stk9 = stk9 + '" . $compra_cantidad[$i] . "' ";
break;
case 10:
$sql2 .= "stk10 = stk10 + '" . $compra_cantidad[$i] . "' ";
break;
}
$sql2 .= " WHERE arti_id='" . $compra_arti_id[$i] . "'";
}
}
$sql4 = "SELECT P.cuenta_cor,P.proveedor_id,M.mone_id,M.moneda_venta,M.moneda_incremento FROM proveedores P INNER JOIN monedas M ON P.cuenta_cor=M.mone_id WHERE P.proveedor_id='" . $compra_cod_prov . "'";
$final_pro = $fila['moneda_venta'] + $fila['moneda_incremento'];
}
$final_total = bcmul($compra_total, $compra_coti, 2); $tf = bcdiv($final_total, $final_pro, 2);
$sql3 = "UPDATE proveedores SET prov_saldo = prov_saldo + $tf WHERE proveedor_id='" . $compra_cod_prov . "'";
@ $compra_arti_id = implode('|', $compra_arti_id); @ $compra_proce = implode('|', $compra_proce); @ $compra_gar_art = implode('|', $compra_gar_art); @ $stk_suc = implode('|', $stk_suc); @ $compra_cantidad = implode('|', $compra_cantidad); @ $compra_precio = implode('|', $compra_precio); @ $compra_iva = implode('|', $compra_iva); @ $tran_id = implode('|', $tran_id); @ $costo_tran = implode('|', $costo_tran); @ $iva_tran = implode('|', $iva_tran); @ $impuesto2_id = implode('|', $impuesto2_id); @ $costo_imp = implode('|', $costo_imp); @ $costo_des = implode('|', $costo_des);
$sql = "INSERT INTO compras VALUES((SELECT max(c.compra_id) + 1 FROM compras c),'$compra_cod_prov','$compra_num_suc','$compra_num_com','$compra_coti','$compra_moneda','$compra_arti_id','$compra_proce','$compra_gar_art','$stk_suc','$compra_cantidad','$compra_precio','$compra_iva','$tran_id','$costo_tran','$iva_tran','$impuesto2_id','$costo_imp','$des_id','$costo_des','$compra_total','$compra_usuario',now(),now(),'0','0','$tf','$compra_clase','$compra_ob','Fc','$tf')";
echo $compra_num_suc . "-" . $compra_num_com;