Utilizacion de la funcion SetItemStatus
Hola Tengo un datawindow y quiero grabar, modificar, eliminar, la informacion dependiendo del estado de las filas, Tambien Quiero cambiar el estado de las mismas.
Tengo el siguente codigo
de antemano gracias por tu ayuda
date vfechaprod,fecha_act
double produccion,prodiaria1
dwItemStatus l_status,sta_codart,sta_prod, statusrow
long lnumdoc
string s_codart, s_codcla, s_codusu, s_nacional, s_codemp, s_numdoc, s_codalm1
string s_estado,s_puncor, s_codcol, s_tipemp, s_nomart, s_tipflo, s_numsec
double r_prod_diaria
date d_fecha_plantas, d_fechacarga, d_fecult, d_fechaprod, d_fecsec
integer n_cod_invernadeo, n_codarea, n_talla, n_tambun, n_uxcaja
fecha_act=today()
fila_act = dw_mandat.rowcount()
dw_2.AcceptText()
s_CodAlm = dw_2.GetItemString( 1, "codalm")
for i= 1 to fila_act
l_status = dw_mandat.GetItemStatus(i,0, Primary!)
// modificacion de una existente
if l_status=DataModified! THen
aqui hare una actualizacion dependiendo del estado de la fiña
end if
// Si es nueva la fila
if l_status=NewModified! Then
Prodiaria = dw_mandat.getitemnumber(i,'Prod_diaria')
s_codart=dw_mandat.getitemstring(i,"codart")
s_codcla=dw_mandat.getitemstring(i,"codcla")
s_codusu=dw_mandat.getitemstring(i,"codusu")
s_nacional=dw_mandat.getitemstring(i,"nacional")
s_codemp=dw_mandat.getitemstring(i,"codemp")
//s_numdoc=dw_mandat.getitemstring(i,"num_doc")
s_codalm1=dw_mandat.getitemstring(i,"codalm")
s_estado=dw_mandat.getitemstring(i,"estado")
s_puncor=dw_mandat.getitemstring(i,"puncor")
s_codcol=dw_mandat.getitemstring(i,"codcol")
s_tipemp=dw_mandat.getitemstring(i,"tipemp")
s_nomart=dw_mandat.getitemstring(i,"nomart")
s_tipflo=dw_mandat.getitemstring(i,"tipflo")
//s_numsec = dw_mandat.getitemstring(i,"numsec")
n_cod_invernadeo=dw_mandat.getitemnumber(i,"cod_invernadeo")
n_codarea=dw_mandat.getitemnumber(i,"codarea")
n_talla=dw_mandat.getitemnumber(i,"talla")
n_tambun=dw_mandat.getitemnumber(i,"tambun")
n_uxcaja=dw_mandat.getitemnumber(i,"uxcaja")
r_prod_diaria=dw_mandat.getitemnumber(i,"prod_diaria")
d_fecha_plantas=date(dw_mandat.getitemdatetime(i,"fecha_plantas"))
d_fechacarga=date(dw_mandat.getitemdatetime(i,"fechacarga"))
d_fecult=date(dw_mandat.getitemdatetime(i,"fecult"))
d_fechaprod=date(dw_mandat.getitemdatetime(i,"fechaprod"))
FOR l = 1 TO Prodiaria
DECLARE sp_secuenciabonches1 PROCEDURE FOR sp_secuenciabonches @EMPRESA = :gs_Codemp,
@CODART = :s_codart;
EXECUTE sp_secuenciabonches1;
FETCH sp_secuenciabonches1 INTO :s_numsec;
CLOSE sp_secuenciabonches1;
commit;
DECLARE sp_secuenciabonchesnumdoc1 PROCEDURE FOR sp_secuenciabonchesnumdoc @EMPRESA = :gs_Codemp ;
EXECUTE sp_secuenciabonchesnumdoc1;
FETCH sp_secuenciabonchesnumdoc1 INTO :s_numdoc;
CLOSE sp_secuenciabonchesnumdoc1;
commit;
INSERT INTO fpsp.dbo.produccion_diaria
(codemp, codarea, cod_invernadeo, fechacarga, codcla, fecha_plantas,
codart, fechaprod, num_doc, talla, prod_diaria, nacional, tambun, codusu,
fecult, codalm, estado, puncor, tipemp, uxcaja, codcol, nomart, tipflo, numren, numsec)
VALUES(:gs_codemp, :n_codarea, :n_cod_invernadeo, :d_fechacarga,:s_codcla,
:d_fecha_plantas, :s_codart,:d_fechaprod, :s_numdoc, :n_talla, 1,
:s_nacional, :n_tambun,:s_codusu, :d_fecult, :s_codalm,:s_estado,:s_puncor,
:s_tipemp, :n_uxcaja, :s_codcol, :s_nomart, :s_tipflo,'0',:s_numsec);
commit;
next
dw_mandat.setitemstatus(i,0,primary!,NotModified!)
end if
next
return 0
Tengo el siguente codigo
de antemano gracias por tu ayuda
date vfechaprod,fecha_act
double produccion,prodiaria1
dwItemStatus l_status,sta_codart,sta_prod, statusrow
long lnumdoc
string s_codart, s_codcla, s_codusu, s_nacional, s_codemp, s_numdoc, s_codalm1
string s_estado,s_puncor, s_codcol, s_tipemp, s_nomart, s_tipflo, s_numsec
double r_prod_diaria
date d_fecha_plantas, d_fechacarga, d_fecult, d_fechaprod, d_fecsec
integer n_cod_invernadeo, n_codarea, n_talla, n_tambun, n_uxcaja
fecha_act=today()
fila_act = dw_mandat.rowcount()
dw_2.AcceptText()
s_CodAlm = dw_2.GetItemString( 1, "codalm")
for i= 1 to fila_act
l_status = dw_mandat.GetItemStatus(i,0, Primary!)
// modificacion de una existente
if l_status=DataModified! THen
aqui hare una actualizacion dependiendo del estado de la fiña
end if
// Si es nueva la fila
if l_status=NewModified! Then
Prodiaria = dw_mandat.getitemnumber(i,'Prod_diaria')
s_codart=dw_mandat.getitemstring(i,"codart")
s_codcla=dw_mandat.getitemstring(i,"codcla")
s_codusu=dw_mandat.getitemstring(i,"codusu")
s_nacional=dw_mandat.getitemstring(i,"nacional")
s_codemp=dw_mandat.getitemstring(i,"codemp")
//s_numdoc=dw_mandat.getitemstring(i,"num_doc")
s_codalm1=dw_mandat.getitemstring(i,"codalm")
s_estado=dw_mandat.getitemstring(i,"estado")
s_puncor=dw_mandat.getitemstring(i,"puncor")
s_codcol=dw_mandat.getitemstring(i,"codcol")
s_tipemp=dw_mandat.getitemstring(i,"tipemp")
s_nomart=dw_mandat.getitemstring(i,"nomart")
s_tipflo=dw_mandat.getitemstring(i,"tipflo")
//s_numsec = dw_mandat.getitemstring(i,"numsec")
n_cod_invernadeo=dw_mandat.getitemnumber(i,"cod_invernadeo")
n_codarea=dw_mandat.getitemnumber(i,"codarea")
n_talla=dw_mandat.getitemnumber(i,"talla")
n_tambun=dw_mandat.getitemnumber(i,"tambun")
n_uxcaja=dw_mandat.getitemnumber(i,"uxcaja")
r_prod_diaria=dw_mandat.getitemnumber(i,"prod_diaria")
d_fecha_plantas=date(dw_mandat.getitemdatetime(i,"fecha_plantas"))
d_fechacarga=date(dw_mandat.getitemdatetime(i,"fechacarga"))
d_fecult=date(dw_mandat.getitemdatetime(i,"fecult"))
d_fechaprod=date(dw_mandat.getitemdatetime(i,"fechaprod"))
FOR l = 1 TO Prodiaria
DECLARE sp_secuenciabonches1 PROCEDURE FOR sp_secuenciabonches @EMPRESA = :gs_Codemp,
@CODART = :s_codart;
EXECUTE sp_secuenciabonches1;
FETCH sp_secuenciabonches1 INTO :s_numsec;
CLOSE sp_secuenciabonches1;
commit;
DECLARE sp_secuenciabonchesnumdoc1 PROCEDURE FOR sp_secuenciabonchesnumdoc @EMPRESA = :gs_Codemp ;
EXECUTE sp_secuenciabonchesnumdoc1;
FETCH sp_secuenciabonchesnumdoc1 INTO :s_numdoc;
CLOSE sp_secuenciabonchesnumdoc1;
commit;
INSERT INTO fpsp.dbo.produccion_diaria
(codemp, codarea, cod_invernadeo, fechacarga, codcla, fecha_plantas,
codart, fechaprod, num_doc, talla, prod_diaria, nacional, tambun, codusu,
fecult, codalm, estado, puncor, tipemp, uxcaja, codcol, nomart, tipflo, numren, numsec)
VALUES(:gs_codemp, :n_codarea, :n_cod_invernadeo, :d_fechacarga,:s_codcla,
:d_fecha_plantas, :s_codart,:d_fechaprod, :s_numdoc, :n_talla, 1,
:s_nacional, :n_tambun,:s_codusu, :d_fecult, :s_codalm,:s_estado,:s_puncor,
:s_tipemp, :n_uxcaja, :s_codcol, :s_nomart, :s_tipflo,'0',:s_numsec);
commit;
next
dw_mandat.setitemstatus(i,0,primary!,NotModified!)
end if
next
return 0
1 respuesta
Respuesta de aldob
1