Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - yogutero

Páginas: [1]
1
Visual Basic 6 / Re:Buenas practicas de programación
« en: Noviembre 16, 2022, 04:14:44 pm »
Buenas tardes:
Gracias por preocuparte de responder a estas preguntas un poco filosóficas.

intentaré explicarme mejor.

Con un albarán hecho (cabecera + líneas) que aparece resumido en una linea de un listview del tipo

codigo albaran     fecha              cliente         subtotal    IVA      total 
A22-03434       10/11/2022       Cliente 1       100          21         121


al hacer doble click pasamos a mostrar el albarán concreto seleccionado en un formulario aparte donde carga la cabecera concreta y todas las lineas del mismo 


Cada línea es del tipo

Articulo                      Cantidad    Precio     descuento subtotal
Disco duro 500 Gb           1              30            10          24,40
Memora DDR4                 2              25             0              50

Mostrados también en un listview. cuando hacemos Click en el Listview podemos cambiar la cantidad por ejemplo de 1 a 4 , pero como NO guardamos en la base de datos hasta terminar todos los cambios , al guardar como las cantidad han cambiado tenemos que saber las cantidades que ha antes de modificar para poder cambiar correctamente el stock.

O bien eliminar TODAS las lineas del albarán -> añadir las unidades al stock -> guardar TODAS las lineas al stock -> restar las uinidades al stock.


Si se guardara cada linea en la base de datos al modificar no habría que hacer esto.

2
Visual Basic 6 / Re:Buenas practicas de programación
« en: Noviembre 11, 2022, 05:16:35 pm »
Gracias por tus aportes.
En cuanto a los stocks trato de explicarme mejor.

Con el método 1 que usas para gestionar las unidades que se añaden o que salen del almacén cuando tienes un lsv relleno con decenas de productos
se debe guardar las unidades en algún sitio ANTES de editar la nueva linea para que cuando de guarde en el lsv se sume o se reste automaticamente con las cantidades cambiadas.
EJ: Producto 1   45 Unidades  3.40 Euros

cuando se edite la línea se guarda las unidades temporalmente , al actualizar pues se suma o resta la cantidad cambiada menos la temporal.



Con el método 2 ya que no se guarda hasta que se le da al botón guardar , al guardar las líneas no se sabe que numero de unidades hay después de los cambios así que opto por:
- se eliminan TODAS las líneas del albarán restando el stock
- Se insertan TODAS las líneas al mismo albarán SUMANDO las unidades, así se controla el stock correctamente.

¿Qué método es mejor? ¿Hay otros más eficientes?







 

3
Visual Basic 6 / Buenas practicas de programación
« en: Noviembre 04, 2022, 06:37:48 pm »
Buenas noches:
Me presento,  soy Carlos desde España, me acabo de registrar en el foro puesto que soy desarrollador de vb6 hace décadas y me gustara consultaros algunas dudas que tengo en cuanto a buenas practicas de programación.

inicialmente son dos las dudas.


Cuando se está haciendo el CRUD de un documento digamos albaranes existe varias lógicas a la hora de programar pero no se cual es la mas eficiente.
Suelo tener dos tablas una con la cabecera del documento y otra con las líneas.
La cabecera se crea llamando a carga_cliente por ejemplo y las lineas a carga_lineas. Esto es cuando quiero consultar desde un listado con X albaranes uno en concreto, haciendo doble click en la linea de un listview. Sin problema.
Pues bien al crear un albarán nuevo sigo llamando a carga_cliente simplemente cuando pones el nombre o el código del cliente pero a la hora de añadir líneas me surge la duda

Opción uno: cada vez que se rellena una línea y pulsamos el botón de insertar linea se añade al listview Y SE GUARDA EN LA BD. insert into albaranes_lineas.....
No hay botón guardar documento sino que se va creando o modificando el albarán "sobre la marcha" y claro si un cliente tiene un albarán más de 30 lineas y el ordenador le da un error no pierde nada.

Opción Dos: el botón insertar linea solo añade los campos al listview de forma que es en el botón guardar final donde
  - se guarda la cabecera en la tabla albaranes
 -  se guardan las líneas todas a la vez recorriendo el listview y haciendo el Insert en albaranes_lineas.

Se hacen menos consultas a la base de datos pero si el cliente tiene un albarán con 30 líneas y se va la luz te quedas sin albarán.

Stocks

 - Con la opción uno una vez que hago doble clic en una linea del albaran subo esa linea para poder ser modificada (y guardo las unidades que se suben) y cuando se modifica y se vuelve a bajar
    veo los cambios que hay en la cantidad y asi sumo o resto del stock.
-  con la opción dos , hago un delete de toda las líneas sumando el stock y un nuevo insert de todas las líneas restando el stock.

¿Qué opináis?


Segunda duda.

cuando se crea un documento se debe obtener el siguiente en la lista de albaranes , después del A22-0034 va el A22-0035,
¿Qué es mejor guardar siempre el ultimo en una tabla digamos contadores y extraer el código de esa tabla sumándole uno o buscar en la tabla albaranes el ultimo y añadirle uno?




Páginas: [1]