Buscar en el Blog

viernes, 22 de enero de 2016

PowerBuilder: Trabajando con columna identidad - Sql Server


Tomando como referencia la aplicacion desarrollada en el post anterior, modificaremos el codigo y nuestra base de datos para generar el codigo de una columna que esta como llave primaria, espeficando dicho campo como identidad.

Primer paso.
Asignar el campo como identidad.




Segundo paso.
Seleccionamos nuestro datawindow cabecera, clic derecho y seleccionamos modificar.
En el menu Rows seleccionamos update properties.




Seleccionamos la columna identidad y le damos clic en ok. Guardamos los cambios en el datawindow.

Tercer paso.
Modificar el script del agregar producto.
En el evento doublecliced colocaremos como comentario.

Cuarto paso.
En el boton nuevo, colocamos como comentario la linea en donde generamos el codigo.
Quinto paso.
En el boton guardar debemos agregar y modificar algunas lineas del sccript.

integer i,j,li_codproducto, li_cantidad,li_codmovimiento
string ls_movimiento
dw_cabecera.accepttext( )
ls_movimiento=trim(dw_cabecera.getitemstring(1,3))
if dw_cabecera.update()=1 then    
    j=dw_detalle.rowcount( )
    li_codmovimiento=dw_cabecera.getitemnumber( 1,1)
        for i=1 to j
                dw_detalle.setitem( i, 1,li_codmovimiento)
        next
    if dw_detalle.update( )=1 then
        for i=1 to j
            li_codproducto=dw_detalle.getitemnumber( i,2)
            li_cantidad=dw_detalle.getitemnumber( i,3)
            uf_actualizarstock(li_codproducto,ls_movimiento,li_cantidad)
        next
        commit using sqlca;
        messagebox("Exito","Se guardaron los datos")
    else
        messagebox("error","No se guardaron los datos")
        rollback using sqlca;
    end if
else
    messagebox("error","No se guardaron los datos")
end if

Por tanto, el boton nuevo, deberia verse así.






No hay comentarios:

Publicar un comentario

Nota: solo los miembros de este blog pueden publicar comentarios.