function update_item(&$mensaje, $id_item, $codigo_proveedor, $codigo_barras, $stock_disponible, $stock_transito, $precio_fob, $precio_nac, $precio_ref, $oculto_fob, $oculto_nac, $unidad, $factor_unidades, $id_proveedor, $agrupacion) { if (item_scan_oblig($id_item) and $codigo_barras == "" or $unidad == 0 or $factor_unidades == "" or $factor_unidades <= 0) { // Si falta alguno de los campos requeridos. // $mensaje = "Error: Debe ingresar los items marcados con *."; return FALSE; } else { // Si estan todos los campos requeridos // if (obtener_tipo_proveedor($id_item) == "EXTRANJERO") { //Calculo los precios nac y ref a partir del precio_fob ingresado si es un item de proveedor extranjero // $id_categoria = obtener_categoria($id_item); $precio_nac = $precio_fob + $precio_fob * porcentaje_impuesto_categoria($id_categoria) / 100; $precio_ref = $precio_nac * precio_dolar(); } $codigo_proveedor = addslashes(trim(strtoupper($codigo_proveedor))); if ($codigo_barras == "") { $codigo_barras = 'NULL'; } else { $codigo_barras = "\"" . addslashes(trim($codigo_barras)) . "\""; } if ($precio_fob == "") { $precio_fob = 'NULL'; } if ($precio_nac == "") { $precio_nac = 'NULL'; } if ($precio_ref == "") { $precio_ref = 'NULL'; } if ($oculto_fob == "") { $oculto_fob = $precio_fob; } if ($oculto_nac == "") { $oculto_nac = $precio_nac; } $query = "UPDATE Item SET\n\tcodigo_proveedor = \"{$codigo_proveedor}\",\n\tcodigo_barras = {$codigo_barras},\n\tstock_disponible = {$stock_disponible},\n\tstock_transito = {$stock_transito},\n\tprecio_fob = {$precio_fob},\n\tprecio_nac = {$precio_nac},\n\tprecio_ref = {$precio_ref},\n\toculto_fob = {$oculto_fob},\n\toculto_nac = {$oculto_nac},\n\tid_unidad_compra = {$unidad},\n\tfactor_unidades = {$factor_unidades},\n\tid_proveedor = {$id_proveedor},\n\tagrupacion_contable = {$agrupacion}\n WHERE\n\tItem.id_item = {$id_item}"; if (!($result = mysql_query($query))) { // Si hay un error al insertar los datos en la base. // $mensaje = "Error: El item no pudo ser actualizado. Motivo posible: El codigo de barras del item ya existia."; // . mysql_error(); return FALSE; } else { // Si se puede insertar los campos en la base. // $mensaje = "El item ha sido actualizado."; return TRUE; } } }
function update_precio_item($id_orden_item, $precio) { $id_item = get_id_item_por_orden_item($id_orden_item); // update cantidad pendiente del item de la orden y update del precio if (obtener_tipo_proveedor_por_orden_item($id_orden_item) == "EXTRANJERO") { $precio_fob = $precio; //Calculo los precios nac y ref a partir del precio_fob ingresado si es un item de proveedor extranjero // $id_categoria = obtener_categoria($id_item); $precio_nac = $precio_fob + $precio_fob * porcentaje_impuesto_categoria($id_categoria) / 100; $precio_ref = $precio_nac * precio_dolar(); $query = "UPDATE Item SET\n\t\t\t\tprecio_fob = {$precio_fob},\n\t\t\t\tprecio_nac = {$precio_nac},\n\t\t\t\tprecio_ref = {$precio_ref}\n\t\t\t WHERE\n\t\t\t\tItem.id_item = {$id_item}"; } else { $precio_ref = $precio; $query = "UPDATE Item SET\n\t\t\t\tprecio_ref = {$precio_ref}\n\t\t\t WHERE\n\t\t\t\tItem.id_item = {$id_item}"; } $result = mysql_query($query); }
function insert_producto(&$mensaje, $categoria, $proveedor, $scan, $codigo_proveedor, $codigo_barras, $precio, $precio_nac, $precio_ref, $autoassign, $unidad, $factor_unidades) { if ($categoria == "" or $proveedor == 0 or $unidad == 0 or $factor_unidades == "" or $scan and $codigo_barras == "" and !$autoassign or $precio == "") { // Si falta alguno de los campos requeridos. Esto es: // Si (producto == "" O proveedor == 0 O stock_minimo == "") O (scan == "si" Y codigo_barras == "") O precio_fob="" // $mensaje = "<em class=\"error\">Error: Debe ingresar los items marcados con *.</em>"; return FALSE; } else { // Si estan todos los campos requeridos // if ($codigo_barras == "") { $codigo_barras = "NULL"; } else { $codigo_barras = addslashes(trim($codigo_barras)); $codigo_barras = "\"{$codigo_barras}\""; } $producto = addslashes(trim($producto)); $codigo_proveedor = addslashes(trim($codigo_proveedor)); $agrup_contable = get_agrupacion_contable($categoria); if (obtener_tipo_proveedor($proveedor) == "EXTRANJERO") { //Calculo los precios nac y ref a partir del precio_fob ingresado $precio_nac = $precio + $precio * porcentaje_impuesto_categoria($categoria) / 100; $precio_ref = $precio_nac * precio_dolar(); if ($precio == "") { $precio = 'NULL'; } if ($precio_nac == "") { $precio_nac = 'NULL'; } if ($precio_ref == "") { $precio_ref = 'NULL'; } $query = "INSERT INTO Item\n \t(id_categoria, id_proveedor, codigo_proveedor, codigo_barras, precio_fob, precio_nac, precio_ref, oculto_fob, oculto_nac, id_unidad_compra, factor_unidades, agrupacion_contable)\n \tVALUES\n \t({$categoria}, {$proveedor},\"{$codigo_proveedor}\", {$codigo_barras}, {$precio}, {$precio_nac}, {$precio_ref}, {$precio}, {$precio_nac}, {$unidad}, {$factor_unidades}, {$agrup_contable})"; } else { if ($precio == "") { $precio = 'NULL'; } $precio_nac = 'NULL'; $precio_fob = 'NULL'; $query = "INSERT INTO Item\n \t(id_categoria, id_proveedor, codigo_proveedor, codigo_barras, precio_fob, precio_nac, precio_ref, oculto_fob, oculto_nac, id_unidad_compra, factor_unidades, agrupacion_contable)\n \tVALUES\n \t({$categoria}, {$proveedor},\"{$codigo_proveedor}\", {$codigo_barras}, {$precio_fob}, {$precio_nac}, {$precio}, {$precio_fob}, {$precio_nac}, {$unidad}, {$factor_unidades}, {$agrup_contable})"; } if (!($result = mysql_query($query))) { // Si hay un error al insertar los datos en la base. // $mensaje = "<em class=\"error\">Error: El item " . htmlspecialchars(stripslashes($producto)) . " no pudo ser dado de alta. Motivo posible: El item ya existia.</em>" . mysql_error(); return FALSE; } else { if ($autoassign) { $result = mysql_query("SELECT LAST_INSERT_ID()"); $row = mysql_fetch_array($result); $query = "UPDATE Item\n\t\t\t\tSET codigo_barras = \"NSSA{$row['0']}\"\n\t\t\t\tWHERE id_item = {$row['0']}"; $result = mysql_query($query); } // Si se puede insertar los campos en la base. // $mensaje = "El item " . $_SESSION["catname"] . " - " . $_SESSION["provname"] . " ha sido dado de alta."; return TRUE; } } }