FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Perdida de recursos en Laout, Folderex (Resuelto)
Posts: 143
Joined: Fri Oct 07, 2005 03:14 PM
Perdida de recursos en Laout, Folderex (Resuelto)
Posted: Wed Jul 07, 2021 06:04 PM
Buenos d铆as foro, ojala y me pueda ayudar.
Estoy desarrollando un sistema de contabilidad con la modalidad de ventanas en folder, es decir en lugar de la cl谩sica ventana popup, cada vez
que abro una a帽ado un a pesta帽a al folder y trabaja todo muy bien, el detalle que acabo de actualizar de FWH 15.01 a FWH2104 con xHarbour
y ya los foder no se comportan de manera correcta, llega un momento en que se pierdes las pantallas (desaparecen los controles) y marca error la aplicaci贸n por
perdida de recursos (.rc).
La aplicaci贸n se comporta bien con FWH1501, xHarbour y BCC582
Pero no la he podido hacer funcionar con FWH2104 con xHarbour y Harbour BCC 7, ya cambie de Foderex a Folder nativo de FW y tampoco
Que puede ser ? le pongo un gif con el efecto visual.

Les deja la liga para la descarga del gif donde muestro el problema.

https://drive.google.com/file/d/1-beSMXmv5bB4p0HVdWtBzGwijOhpGQby/view?usp=sharing

de antemano gracias
Joel Andujo
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: Perdida de recursos en Laout, Folderex
Posted: Wed Jul 07, 2021 06:18 PM

Hol谩, que usas? Recursos 贸 c贸digo? Peque帽o ejemplo? M谩s detalles, porfa.

Se usas Recursos, muestre el .RC del FOLDEREX y del FLD_HIJA.

Regards, saludos.

Jo茫o Santos - S茫o Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 143
Joined: Fri Oct 07, 2005 03:14 PM
Re: Perdida de recursos en Laout, Folderex
Posted: Wed Jul 07, 2021 06:37 PM
Gracias por contestar Karinha, b谩sicamente este es el ejemplo:

El folderex (con Folder nativo pasa lo mismo) lo defino por c贸digo desde el main, este esta dentro de un Panel:

@01,01 FOLDEREX oFldGral PIXEL PROMPT '&Inicio' SIZE oPanel2:nRight-oPanel2:nLeft-9, oPanel2:nBottom-oPanel2:nTop-5 ACTION DelFld() OF oPanel2

y voy agregando folders cada vez que el usuario ejecuta una opci贸n del men煤: AddFld(Nombre de la opci贸n .prg)

Code (fw): Select all Collapse
*----------------------------*
func AddFld(cNomRes)
 local nFld:=0, nRes:=0, cResCap:='', i:=0
 cNomRes:=upper(cNomRes)

 // Buscamos que no este abierto el Folder
 nFld:=Len(oFldGral:aDialogs)
 for i:=nFld to 1 step -1
     if (oFldGral:aDialogs[i]:cResName==cNomRes)
         oFldGral:SetOption(i)
        retu.f.
     endif
 next

 nRes:=ascan(oVp:aResources, {|array| array[1]==cNomRes})
 if nRes>0
    cResCap:=oVp:aResources[nRes,2]  // Caption del Resource
    cResID :=oVp:aResources[nRes,3]    // ID del Resource

    // Agregamos folder
    oFldGral:AddItem(cResCap, cNomRes, {|oDlg| RedefineCtrls(oDlg, cResID)  } )
    nFld:=len(oFldGral:aDialogs)

    oFldGral:SetBitMap('Images\FSalir.bmp'    , nFld)
    oFldGral:SetBrightBmp('Images\FSalir2.bmp', nFld)
    oFldGral:aAlign[nFld]:=1 //Right
    oFldGral:aDialogs[nFld]:bValid:={|| CerrarDlg()}
 endif
retu.t.

*----------------------------*
stat func RedefineCtrls(oDlg, cResID)
 local opVar:=TPublic():New(.T.); opVar:lIni:=.t.
 // Genero Objeto Hash que cargar谩 con la variables del Folder(Dialogo) en Proceso
 v[cResID]:=opVar

 // .PRG a ejecutar
 do case
    case (cResID=='POL'); TPolizas(oDlg)                               // Captura de P贸lizas
    case (cResID=='VP'); RVerPolizas      (oDlg, v[cResID])            // Verificador de P贸lizas
    case (cResID=='BC'); RBalanzaCom      (oDlg, v[cResID])            // Balanza de Comprobaci贸n
    case (cResID=='DG'); RDiarioGral      (oDlg, v[cResID])            // Diario General
    case (cResID=='MA'); RMayorAcum       (oDlg, v[cResID])            // Mayor Acumulado
    case (cResID=='MD'); RMayorDeta       (oDlg, v[cResID])            // Mayor Detallado
    case (cResID=='AM'); RAuxMayor        (oDlg, v[cResID])            // Auxiliar de Mayor
    case (cResID=='RA'); RRelacionesAna   (oDlg, v[cResID])            // Relaciones Anal铆ticas
    case (cResID=='ER'); REdoResultados   (oDlg, v[cResID])            // Estado de Resultados
    case (cResID=='EP'); REdoPosFinanciera(oDlg, v[cResID])            // Estado de Posici贸n Financiera
    case (cResID=='EF'); REdoFinCompa     (oDlg, v[cResID])            // Estado Financiero Comparativo
    case (cResID=='EC'); REdoCamSitFinan  (oDlg, v[cResID])            // Estado de Cambios en la Situaci贸n Financiera
    case (cResID=='PC'); TParamContaSAT   (oDlg, v[cResID])            // Param茅tros Conta SAT
    case (cResID=='GA'); TGenArchivosElect(oDlg, v[cResID])            // Generaci贸n de archivos Electr贸nicos SAT
    case (cResID=='RC'); HResguardoCFDI   (oDlg, v[cResID])            // Generaci贸n de archivos Electr贸nicos SAT
    case (cResID=='RP'); TReproceso       (oDlg, v[cResID])            // Reproceso de P贸lizas (Generamos Saldos)
    case (cResID=='CS'); HConSaldosMovs   (oDlg, v[cResID])            // Consulta de Saldos y Movimientos
 endcase
retu.t.


Espero te ayude y de antemano gracias
Joel Andujo
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: Perdida de recursos en Laout, Folderex
Posted: Thu Jul 08, 2021 01:14 PM
Bu茅n dia. Este ejemplo, no me ayda en nada, simplesmente no comprendo, podrias hacer un ejemplo m谩s simples y completo, e poner en el mega upload como .RAR? Para testes?

https://mega.nz/

Regards, saludos.
Jo茫o Santos - S茫o Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 143
Joined: Fri Oct 07, 2005 03:14 PM
Re: Perdida de recursos en Laout, Folderex
Posted: Thu Jul 08, 2021 04:01 PM

Tienes raz贸n Karinha, de hecho la lo estoy preparando en cuento lo tengo lo subo.

gracias.
Joel Andujo

Posts: 143
Joined: Fri Oct 07, 2005 03:14 PM
Re: Perdida de recursos en Laout, Folderex
Posted: Fri Jul 09, 2021 01:56 AM
Despu茅s de un buen rato he encontrado el error, lo provoca esta l铆nea:

DEFINE MSGITEM oMsgItem OF oWnd:oMsgBar PROMPT oVP:cUsuyPAC SIZE 5*len(oVP:cUsuyPAC) BITMAPS 'AA_ICO' // ESTA LINEA PROBOCA EL ERROR
Esta en el fuente: TestError.prg, l铆nea 145, si omito esta l铆nea todo funciona perfecto.

El error sucede al estar jugando con los folders, subo .rar con fuentes, ejecutable y Video Error.mp4 donde muestro como se pierden los recursos e im谩genes.
Al final la aplicaci贸n se marca error y se sale.

https://mega.nz/file/EKpG1bQQ#cypkYlAAn1G3GqLK0MG1B180zyn-u5LihDr5OzpRa-U

de antemano muchas gracias.
Joel Andujo
FWH 21.04, xHarbour 1.2.3 Intl. (SimpLex) (Build 20201212), BCC 7.0, PellesC
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Perdida de recursos en Laout, Folderex
Posted: Fri Jul 09, 2021 06:26 AM

Joel,

Revisa este post en donde se explica como proceder

viewtopic.php?p=241020sid=ae24a5b4cde999b6a1e092b5669c7207#p241020

saludos

&

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: Perdida de recursos en Laout, Folderex
Posted: Fri Jul 09, 2021 02:10 PM
Joel, cambie por:

Code (fw): Select all Collapse
   SET MESSAGE OF oWnd TO...


Reporte se funciona ahora.

Regards, saludos.
Jo茫o Santos - S茫o Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: Perdida de recursos en Laout, Folderex
Posted: Fri Jul 09, 2021 02:31 PM
Joel,

Mira se ayuda:

Code (fw): Select all Collapse
   //-> Esta em \samples\TESTMBAR.PRG
   /*
   oWnd:KeybOn()
   oWnd:DateOn()
   oWnd:ClockOn()
   oWnd:Refresh()
   */

   /*  // ESTA EM: \SAMPLES\ACCOUNT - Modelo antigo, mas legal clicka/desclika
   STATIC oClock, oDate, oKeyb  // mensajes de estado para la barra de estado

   ACTIVATE WINDOW oWnd MAXIMIZED;
             ON INIT (CreaDbfConta(),;
                      oWnd:ClockOn(), oClock:SetCheck(.T.),;
                      oWnd:DateOn(), oDate:SetCheck(.T.),  ;
                      oWnd:KeybOn(), oKeyB:SetCheck(.T.) ) ;
             VALID  Confirma("Si cierra la aplicacion volver聽 al Windows.  篓Deseas Salir del Programa?");
             ON PAINT dbCommitAll()
   */


Regards, saludos.
Jo茫o Santos - S茫o Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 143
Joined: Fri Oct 07, 2005 03:14 PM
Re: Perdida de recursos en Laout, Folderex (Resuelto)
Posted: Fri Jul 09, 2021 04:36 PM
Gracias por su ayuda, detectado y resuelto.
El detalle esta en: BITMAPS 'AA_ICO' que defino en MSGITEM:

DEFINE MSGITEM oMsgItem OF oWnd:oMsgBar PROMPT oVP:cUsuyPAC SIZE 5*len(oVP:cUsuyPAC) BITMAPS 'AA_ICO'

Elimine BITMAPS de MSGITEM y lo cambie por:

DEFINE ICON oIcon RESOURCE 'AA_ICO'
oWnd:SetIcon(oIcon)


todo trabaja bien, gracias Karinha y Master Antonio
Regards, Saludos.

Continue the discussion