Saludos a todos estoy haciendo un dialogo mdi y me funciona todo correcto excepto que si quiero dejar abierto el dialogo no puedo por que cuando abro otro programa o alguna hoja de excel este dialogo queda encima de la hoja o de otro programa tengo que cerrar el dialogo para poder visualizar la otra aplicacion.
Aca les dejo mi codigo para ver si alguien encuentra mi error.
FUNCTION PreccosVCons( oWnd )
Local oDlg, aGets := { Date(), Date(),space(20) }, oGet, oLbx
Local aTot := {0,0,0,0}
LOCAL oPara := _DaPara(), nAge , oSay, oGet1, oAgen, aLinea, oLinea, oSiNo,aSiNo
LOCAL cTabla, oDb, oBase, aAgen, oBGet1,aLi,oBaset,oBGet2,opcion:=1
LOCAL aHead1:= { 'No.', 'Agencia' }
Local oFoc
Local oPreccos,fXls,cHoja,oIcon
LOCAL bLAct2:= {||(EVAL(oFoc:bSetGet,AyudaG2( oFoc, "Linea Inventario", aLi, { 'Clave','Linea Inventario' },{80,200},150,100, {187,88} )), ;
oFoc:Refresh(),oFoc:SetFocus())}
if oWndFact01 == NIL
oGet := Array( 2 )
oPreccos := TempPreccos();
///LINEAS DE INVENTARIO
oDb:= _BaseDatos()
cTabla := "catlineasi"
oBaset := TMsTable():New( oDb, cTabla )
if !oBaset:Open()
return( nil )
endif
aLi := {}
If !Empty( oBaset:LastRec() )
oBaset:GoTop():Read()
While !oBaset:Eof()
Aadd( aLi, { oBaset:FieldGet( 1 ), oBaset:FieldGet( 2 ) } )
oBaset:Fetch()
EndDo
EndIf
oBaset:Destroy()
DEFINE ICON oIcon RESOURCE "ICONSIS"
DEFINE DIALOG oWndFact01 TITLE "CONSULTAS PRECIOS VRS COSTOS VENDEDOR UNIFICADO LLANTA NUEVA Y REENCAUCHE" ;
OF oWnd RESOURCE "CONSULTAS" ICON oIcon
REDEFINE DTPICKER oGet[1] VAR aGets[1] ID 105 OF oWndFact01 UPDATE //fecha 1
REDEFINE DTPICKER oGet[2] VAR aGets[2] ID 106 OF oWndFact01 UPDATE // fecha 2
REDEFINE GET oFoc VAR aGets[3] ID 103 OF oWndFact01
REDEFINE BUTTON ID 16 ;
OF oWndFact01 ;
ACTION buscar_PreccosVConso( oLbx, oWndFact01, oPreccos, aGets )
REDEFINE BTNBMP ID 101 OF oWndFact01 RESOURCE "EXCELEQ" ;
ACTION generaexcelcons( oPreccos,Agets )
TWbrowse():lHscroll:= .T.
REDEFINE LISTBOX oLbx ;
FIELDS oPreccos:Codigo , ;
oPreccos:Nombre , ;
transform(oPreccos:ventas,"999,999,999.99") , ;
transform(oPreccos:notas,"999,999,999.99") , ;
transform(valc(oPreccos:ventas-oPreccos:Notas),"999,999,999.99") ;
HEADER "Código","Nombre","Ventas", "Notas", "Total" ;
ID 172 ;
OF oWndFact01 ;
SIZES 40,380,75,75,75 UPDATE
oPreccos:SetBrowse( oLbx )
oLbx:nLineHeight := 16
oLbx:nHeaderHeight := 16
//oLbx:nFreeze := 4
oLbx:aHJustify:={2,2,2,2,2}
oLbx:aJustify:={.t.,.f.,.t.,.t.,.t.}
oLbx:lDrawFooters :=.T.
//oLbx:aActions := Array( 6 )
//oLbx:aActions[1] := { || OrdenArEq( 3, 3 , oPreccos, oLbx,oWndFact01,aGets ) }
//oLbx:aActions[2] := { || OrdenArEq( 2, 3 , oPreccos, oLbx,oWndFact01,aGets ) }
// oLbx:aActions[3] := { || OrdenArEq( 1, 3 , oPreccos, oLbx,oWndFact01,aGets ) }
// oLbx:aActions[4] := { || OrdenArEq( 4, 3 , oPreccos, oLbx,oWndFact01,aGets ) }
// oLbx:aActions[5] := nil
// oLbx:aActions[6] := nil
//ON DBLCLICK dobleclick_PreccosV( oPreccos, aGets , oWndFact01 ) ;
//oLbx:aFooters :={|| {"","Total",Tran(aTot[1],"9,999,999,999 "),Tran(aTot[2],"9,999,999,999 "),Tran(aTot[3],"9,999,999,999 "),Tran(aTot[4],"9,999,999,999 ") }}
// oLbx:bKeyDown := {|nKey| IF(nKey = 13, dobleclick_PreccosV( oPreccos, aGets , oWndFact01 ) , ) }
REDEFINE BUTTON ID 95 OF oWndFact01 ACTION oWndFact01:End() CANCEL
ACTIVATE DIALOG oWndFact01 NOWAIT CENTER RESIZE16;
VALID ( oWndFact01 := NIL, .T. ) ;
ON INIT (oBGet1 := GetBitmap(oFoc,"Ayuda",,bLAct2),;
llenarLLnReen( oLbx, oWndFact01, oPreccos, Agets, aTot ) );
Else
//VALID ( IIF( Salida(),( oWndFact01:=NIL, .T.), .F.) ) ;
oWndFact01:SetFocus()
End
RETURN NIL
Atentamente
Julio Rodrigo Ponce Hinestroza
www.suproye.com
jponce@suproye.com