necesito modificar esta consulta para actualizar el stock mediante sql

09/01/2007 - 09:46 por Sonia | Informe spam
al facturarcon vb.net, guardo la cabecera de la factura y las lineas de este
modo:

'cabecera

mysql = "insert into FACTURAS (NUMERO_FACTURA, CLIENTE, FECHA, ID_PEDIDO,
REFERENCIA, EMPLEADO, DTO1, DTO2, DTO3, DTO4, modo_pago, iva, ALMACEN,
OBSERVACIONES, codigo_pago) values ('" & numfac.Text & "','" & codcli.Text
& "','" & fechafac.Text & "','" & idgenerarfactura & "','" & referencia.Text
& "','" & Operadora.Text & "','" & d1.Text & "','" & d2.Text & "','" &
d3.Text & "','" & d4.Text & "'," & modogenerarfactura & "," & iva2 & ",'" &
almacen & "','" & tocho & "','" & pago & "')"
nuevo.Gestionar(mysql)

'lineas

mysql = "INSERT INTO lineas_factura (numero_factura, codigo, cantidad, pvp,
titulo, codigo_articulo, dto) SELECT " & num & ",isbn, cantidad, pvp,
titulo, cod_art, dto_gen FROM generarlineasfactura where id_pedido=" & idped
CrearMiOleDbCommand(mysql, CadenaConexion)


ahora necesito modificar el stock pero kisiera hacerlo dela forma mas eficaz
y rapida posible, es decir, desde las lineas facturas, para lo cual me falta
como buscar de una sola consulta los campos 'clave' y stock' de las todas
las lineas factura de esa factura

me podeis decir como hacerlo
la forma una a una sacando para cada linea esos 2 campos seria esta, pero es
muy lenta.
queria hacerlo de forma similar a como guardo las lineas (mediante otra
consulta), per con el update no se como hacerlo

gracias!

mysql = "update stock set stock=stock -" & canti & " where CLAVE ='" &
cod_art & "' AND ALMACEN='" & alm & "'"
CrearMiOleDbCommand(mysql, CadenaConexion)
 

Leer las respuestas

#1 Sonia
09/01/2007 - 10:07 | Informe spam
me explico.

ahora teng una tabla consulta llamada
'stockactualiza'
con los campos:
numero_factura, codigo_articulo,cantidad,almacen

cuando guardo laslineas dela factura kiero q mi tabla 'stock'
q contine 3 campos: almacen,articulo,stock
actualice la columna stock para cada articulo de una factura, cogiendolo de
la consulta de arriba
el problema es q se hacer el update si tengo los campos a actualizar en
textbox,string, etc, per no se cgerlo de una consulta
seria algo como
para el numero de factura x, actualizar el stock
como puedo hacerlo?
gracias!111111111111111

"Sonia" escribió en el mensaje
news:
al facturarcon vb.net, guardo la cabecera de la factura y las lineas de


este
modo:

'cabecera

mysql = "insert into FACTURAS (NUMERO_FACTURA, CLIENTE, FECHA, ID_PEDIDO,
REFERENCIA, EMPLEADO, DTO1, DTO2, DTO3, DTO4, modo_pago, iva, ALMACEN,
OBSERVACIONES, codigo_pago) values ('" & numfac.Text & "','" &


codcli.Text
& "','" & fechafac.Text & "','" & idgenerarfactura & "','" &


referencia.Text
& "','" & Operadora.Text & "','" & d1.Text & "','" & d2.Text & "','" &
d3.Text & "','" & d4.Text & "'," & modogenerarfactura & "," & iva2 & ",'"


&
almacen & "','" & tocho & "','" & pago & "')"
nuevo.Gestionar(mysql)

'lineas

mysql = "INSERT INTO lineas_factura (numero_factura, codigo, cantidad,


pvp,
titulo, codigo_articulo, dto) SELECT " & num & ",isbn, cantidad, pvp,
titulo, cod_art, dto_gen FROM generarlineasfactura where id_pedido=" &


idped
CrearMiOleDbCommand(mysql, CadenaConexion)


ahora necesito modificar el stock pero kisiera hacerlo dela forma mas


eficaz
y rapida posible, es decir, desde las lineas facturas, para lo cual me


falta
como buscar de una sola consulta los campos 'clave' y stock' de las todas
las lineas factura de esa factura

me podeis decir como hacerlo
la forma una a una sacando para cada linea esos 2 campos seria esta, pero


es
muy lenta.
queria hacerlo de forma similar a como guardo las lineas (mediante otra
consulta), per con el update no se como hacerlo

gracias!

mysql = "update stock set stock=stock -" & canti & " where CLAVE ='" &
cod_art & "' AND ALMACEN='" & alm & "'"
CrearMiOleDbCommand(mysql, CadenaConexion)




Preguntas similares