- Code: Select all Expand view
////
Case nCol == 1
bValid:= {|| iif(bprodu(ubuffer,oNsto), .T. , (Alert( "Codigo Articulo Inexistente :-("),.F.)) }
If lContinue:= oBrw:lEditCol( nColReal, @uBuffer, "@ZE 9999", bValid,,CLR_YELLOW)
aPedido:aDet[nAt,1]:= oNsto:codigo
aPedido:aDet[nAt,2]:= oNsto:producto
aPedido:aDet[nAt,8]:= oNsto:abrevia
aPedido:aDet[nAt,12] := oNsto:alpeso
aPedido:aDet[nAt,6]:= oNsto:abrevia
EndIf
///etc
FUNCTION BPRODU(ncod,odbf)
local lacepto := .F.
local olbm, odlg
local nbut
odbf:setorder(2) //ordeno por nombre
odbf:gotop()
if empty(ncod)
DEFINE ICON surge resource "icoprog"
DEFINE DIALOG oDlg resource "lisbus_1" ICON surge
odlg:cCaption:= "Productos"
REDEFINE LISTBOX olbm FIELDS (oDbf:calias) ->producto ID 101;
ON DBLCLICK (lacepto:= .t.,odlg:end()) of odlg
olbm:setfocus()
olbm:bSkip := { | nRecs | oDbf:Skipper( nRecs ) }
oLbm:bSeek := {|lRet| oLbm:DbfSeek(.T.) }
oLbm:bkeydown := {|nkey,nflags| iif(nKey = VK_RETURN, nBut:setfocus(),.f.)}
olbm:nClrBackFocus := CLR_CYAN
olbm:nClrForeFocus := CLR_WHITE
REDEFINE BUTTON NBUT ID 102 ACTION (lacepto := .t.,odlg:end())
REDEFINE BUTTON ID 103 ACTION( clientes( olbm, .t.,odbf),olbm:refresh())
ACTIVATE DIALOG ODLG
ELSE
odbf:setorder(1)
odbf:seek(ncod)
if odbf:found()
lacepto := .t.
endif
ENDIF
if lacepto
RETURN .t.
endif
return .f.
Pero cuando llamo de nuevo el pedido y quiero añadir otro producto me aparece el listbox vacío
- Code: Select all Expand view
if !lnuevo // si es un pedido existente cargo en el formulario todos los datos
///
eval(beval)
oPmemo:seek(oPinterno:pedido)
if oPmemo:found()
aPedido:observa := oPmemo:observa
endif
aPedido:totales := aPedido:totpes
busnap(oMae,oPinterno:ncli)
aPedido:ncli := oMae:ncli
aPedido:nape := oMae:nape
aPedido:domi := oMae:domi
aPedido:vendedor := oPinterno:vendedor
if oPinterno:estado = "A"
cEstado := "Autorizado"
elseif oPinterno:estado = "R"
cEstado := "Remito " + oPinterno:remito
endif
oDpedido:seek(oPinterno:pedido)
if oDpedido:found()
do /
aadd(aPedido:aDet,{oDpedido:codigo,[size=150]eval(bprodu)[/size], oDpedido:unidad,oDpedido:cantidad,oDpedido:precio,oDpedido:envase,oDpedido:comision,oNsto:abrevia,oDpedido:recno(),.t.,.t.,oNsto:alpeso,0,0,0})
oDpedido:skip()
until oDpedido:pedido # oPinterno:pedido
Aquí me carga bien el formulario pero si quiero agregar un producto el listbox con los mismos me aparece vacío.
No pude encontrar el porque de este comportamiento.
Gracias