Esta consulta es de hace 3 años. Tenga eso en cuenta.
Esta web utiliza cookies propias y de terceros para su funcionamiento. ¿Aceptas? Leer más
dilmix2_f74d39
dilmix2_f74d39
Pregunta facturacion_base cerrado

Plugin: facturacion_base Igual estoy haciendo algo...

Plugin: facturacion_base
Igual estoy haciendo algo mal....casi seguro, vaya...pero si tengo 3 unidades en stock de un artículo y en ventas/pedidos intento hacer un pedido de 4 unidades...no debería decirme que no puede ser o algo así?
Tengo la opción "Permitir ventas sin stock" puesta en NO, pero parece que solo funciona si el stock es igual a cero.

España   04-10-2016 21:08:15   10-10-2016 20:02:02   5  

Comentarios
dilmix2_f74d39
He puesto el ejemplo de ventas/pedidos, pero pasa lo mismo en albaranes y facturas.
NeoRazorX
Todavía no hay una comprobación "estricta" del stock. Mientras haya una unidad te permite vender las que quieras.
Se avanzará en ese área cuando se revise toda la gestión de stock.
Saludos.
dilmix2_f74d39
Bueno, de momento he conseguido evitar que se incluya en un albarán cualquier cantidad de un artículo mayor que la del stock disponible.
Peeeeero...el precio total no se guarda correctamente en la bdd y salta el error de que "el total difiere entre la vista y el controlador", posterior eliminación del albarán.
Hasta aquí he llegado con mis conocimientos/tiempo disponible.
Pongo el código por si alguien quiere echarme un cable. Aviso, es una chapuza y lo sé.

plugins/facturacion_base/controller/nueva_venta.php empezando en la línea 732
[code]

//buscamos el stock real del artículo
$select=$this->db->select("SELECT stockfis FROM articulos WHERE referencia='".$linea->referencia."'");
$stockreal=$select[0]['stockfis'];

//si es menor que la cantidad seleccionada lanzamos mensaje con el/los artículos que no tienen suficiente stock y marcamos la variable $lineastock=FALSE
if($linea->cantidad > $stockreal){
$this->new_error_msg("¡No hay suficiente stock del artículo: ".$linea->referencia);
$lineastock = FALSE;
}


//ponemos un if que evita actualizar el albarán con los artículos sin stock suficiente
if($lineastock)
{
//a partir de aquí todo queda igual y cerramos el if
if($linea->save() )
{
if( $articulo AND isset($_POST['stock']) )
{
/// descontamos del stock
$articulo->sum_stock($albaran->codalmacen, 0 - $linea->cantidad);
}

$albaran->neto += $linea->pvptotal;
$albaran->totaliva += ($linea->pvptotal * $linea->iva/100);
$albaran->totalirpf += ($linea->pvptotal * $linea->irpf/100);
$albaran->totalrecargo += ($linea->pvptotal * $linea->recargo/100);

if($linea->irpf > $albaran->irpf)
{
$albaran->irpf = $linea->irpf;
}
}
else
{
$this->new_error_msg("¡Imposible guardar la linea con referencia: ".$linea->referencia);
$continuar = FALSE;
}
}

[code]
dilmix2_f74d39
Se me olvidó cerrar el [/code] del final :(
dilmix2_f74d39
Solucionado, aunque no de la mejor manera.
De esta forma, la función nuevo_albaran_cliente() de facturacion_base/controller/nueva_venta.php (se puede hacer lo mismo con nueva_factura_cliente() ) realmente controla si hay suficiente stock de cada artículo añadido y en caso contrario, añade al albarán únicamente la cantidad disponible del artículo/s en cuestión. Además lanza un mensaje indicando el artículo/s sin stock suficiente.
Empezando en la línea 730:

//dilmix->buscamos el stock físico del artículo actual
$select=$this->db->select("SELECT stockfis FROM articulos WHERE referencia='".$linea->referencia."'");
$stockreal=$select[0]['stockfis'];

//dilmix->si es menor que la cantidad seleccionada recalculamos con la cantidad disponible y lanzamos mensaje de error
if($linea->cantidad > $stockreal){
$linea->cantidad=$stockreal;
$linea->pvpsindto = ($linea->pvpunitario * $linea->cantidad);
$linea->pvptotal = $linea->pvpsindto -( $linea->pvpsindto * $linea->dtopor/100);
$this->new_error_msg("¡No hay suficiente stock del artículo: ".$linea->referencia);
}


Lo que no me gusta es que un poco más abajo tengo que comentar éste if para que no controle si hay diferencias entre la vista y el controlador (las va a haber porque estamos cambiando lo pedido en el formulario):

/*if comentado
if( abs(floatval($_POST['atotal']) - $albaran->total) >= .02 )
{
$this->new_error_msg("El total difiere entre la vista y el controlador (".$_POST['atotal'].
" frente a ".$albaran->total."). Debes informar del error.");
$albaran->delete();
//}
/*else*/ if( $albaran->save() )-->a partit de éste if todo continúa igual


La pregunta es la siguiente:
Qué posibles errores se intentan evitar controlando la diferencia entre vista y controlador? Qué puede ocurrirr al dejar de controlarlo?
NeoRazorX
Con esa comprobación se intentar detectar casos en los que el cálculo de la vista sea distinto al del controlador. De vez en cuando avisan de que falla, pero nunca dan más datos. Eso está ahí para detectar errores de programación, más que nada.
dilmix2_f74d39
Ok, entonces lo doy por bueno de momento. Por lo menos hasta que se revise la gestión del stock en próximas actualizaciones.
Gracias y felicidades por el trabajo. Si puedo ayudar en algo (dentro de mis limitaciones) por aquí estaré.
NeoRazorX
Puedes enviar plugins que hagas y quieras compartir: https://www.facturascripts.com/comm3/index.php?page=community_enviar_plugin
Saludos.
dilmix2_f74d39
No se si vale la pena hacer un plugin basado en esta modificación, ya que es una cambio bastante pequeño.
Si creeis que la vale, me pongo a ello en cuanto tenga un momento (o dos).
-
[[Cerrado por inactividad]]

Cerrado
otros
Título Tipo
dilmix2_f74d39
Versión 8 del plugin beneficios ya disponible. Añadido soporte para artículos sin referencia (líneas libres).
cerrado 24-01-2019 20:59:26
Actualización 0
dilmix dilmix
El plugin está funcionando correcto pero al importar pedidos a clientes que tienen marcado el recargo de equivalencia no consigo que le sume ese impuesto. Me reduce el precio neto para que, una...
cerrado 10-12-2018 15:25:43
Pregunta 3
dilmix
Versión 7 del plugin beneficios ya disponible: Solucionados pequeños errores
cerrado 20-07-2018 16:51:43
Actualización 0
dilmix
Ya disponible el plugin beneficios v6: Se ha añadido integración con el plugin editar_facturas. Ahora puedes ver los beneficios en tiempo real cuando estás editando una factura.
cerrado 26-06-2018 12:23:34
Actualización 0
dilmix
Buenos días, he estado probando la demo del tpv_táctil y no he conseguido que se vean las imágenes de los artículos que he adjuntado. En las famílias sí. Necesitan algún formato de imágen concreto...
cerrado 15-05-2018 13:39:54
Pregunta 0
dilmix dilmix
Hola, veo que éste plugin está marcado como inestable. Necesita una simple revisión, con lo que podría adquirirlo y usarlo en producción sin problemas o realmente tiene algún problema, con lo que...
cerrado 09-05-2018 16:17:09
Pregunta 4
dilmix dilmix
Buenas, los cálculos de stock a veces no cuadran o no sé por qué razón salen algunos cálculos. Por ejemplo, si hay 0 unidades del artículo X y en nueva cantidad pongo 2, luego al vender una unidad...
cerrado 05-01-2018 16:19:12
Pregunta 4
dilmix
Versión 5 del plugin beneficios ya disponible: Corregidos varios errores y mejorada la experiencia de usuario gracias a la ayuda de Shawe. Mejorada interacción con la base de datos, ahora los...
cerrado 06-11-2017 20:46:36
Actualización 0
dilmix valen.ayesa_f74d39
Novedades del plugin beneficios, versión 3: Arreglado error al tener configurada la coma para separar decimales. Soporte para guardar beneficios en la base de datos. Todavía no soporta la...
cerrado 07-07-2017 15:17:09
Actualización 3
dilmix2_f74d39 jadacom
Plugin: factura_detallada Hoy me ha pasado y no es la primera vez, que al imprimir una factura detallada me salía el iva desglosado dos veces (21% duplicado). Recordaba que alguna otra vez lo...
cerrado 19-04-2017 19:08:55
Pregunta 3
dilmix2_f74d39 dilmix2_f74d39
Plugin: albaranes_programados Me he dado cuenta de que para programar un albarán hay que hacerlo a partir de uno que ya esté hecho. Resulta que quería programar algunos albaranes de los que ya...
cerrado 14-02-2017 17:37:19
Pregunta 3
dilmix2_f74d39 dilmix2_f74d39
No se ven los votos de G+1 en el listado de ideas. No se si es cosa mía, pero al entrar en la idea sí puedo ver los votos obtenidos (ya he hecho unas cuantas pruebas), pero en el listado general...
cerrado 02-02-2017 20:21:51
Error 2
dilmix2_f74d39 ezequieltotoras_f74d39
Plugin: factura_detallada Poner opción para imprimir o no el nº de pedido. A veces se utiliza el campo "Número 2" como referencia interna y es preferible que el cliente no lo vea.
cerrado 22-03-2017 23:21:47
Idea 3
dilmix2_f74d39
Plugin: facturacion_base Poner el total de cada albarán cuando se agrupan varios en una misma factura. Hay clientes que quieren ver en la factura el total de cada albarán (por ejemplo, diferentes...
cerrado 30-01-2017 12:39:03
Idea 0
dilmix2_f74d39 KalimAz
Plugin: factura_detallada Al poner un símbolo de euro (€) en la descripción del artículo lo convierte en un interrogante (?). Ya he comprovado que la tabla estuviera en innodb y codificación...
cerrado 30-01-2017 17:51:09
Error 3
dilmix2_f74d39 dilmix2_103
Al intentar previsualizar cualquier modelo de etiqueta (de momento he probado con los dos predefinidos), me lanza los siguientes errores: Notice: Trying to get property of non-object in...
cerrado 15-12-2016 11:24:31
Error 5
dilmix2_f74d39 dilmix2_103
Problema con el remote_printer: Hola, cuando intento instalar el remote_printer me sale un mensaje diciendo que no se puede iniciar la aplicación. La impresora instalada es una Epson TM-20II y...
cerrado 22-11-2016 12:40:17
Pregunta 2
dilmix2_f74d39 dilmix2_103
Plugin: servicios Pequeña modificación para diferenciar por colores los servicios asignados a cada empleado en el calendario. De momento solo lo he adaptado a 2 empleados distintos y sin utilizar...
cerrado 21-11-2016 22:21:20
Idea 5
dilmix2_f74d39 dilmix2_103
Plugin: tpvmod Hola, esto es una duda sobre el funcionamiento del tpv integrado. Bueno, en realidad son un par de dudas. 1- Para cobrar en una serie diferente a clientes concretos, es necesario...
cerrado 21-11-2016 20:58:06
Pregunta 8
dilmix2_f74d39 dilmix2_103
Plugin: facturacion_base Pequeña modificación en view/ventas_artículos.html para mostrar pequeña imagen en el listado. Puede que a alguien le sea útil ver una pequeña imagen en el listado y que...
cerrado 22-12-2016 19:28:42
Idea 12
dilmix2_f74d39 dilmix2_103
Plugin: presupuestos_y_pedidos Estoy intentando que en pedidos se muestre únicamente los generados a través del empleado activo. En principio mi idea fue esconder las pestañas "todo",...
cerrado 06-10-2016 00:15:30
Pregunta 5