ATOUTFOX
COMMUNAUTÉ FRANCOPHONE DES PROFESSIONNELS FOXPRO
Visual FoxPro : le développement durable

Le fichier le plus récent ouvert durant la session VFP   



L'auteur

eddymaue
Canada Canada
Membre Simple
# 0000000075
enregistré le 26/10/2004
Maue Eddy
j8j 8j8 Gatineau
de la société Formatek
Fiche personnelle


Note des membres
pas de note

Contributions > 01 - PRG : Programmation

Le fichier le plus récent ouvert durant la session VFP
# 0000000504
ajouté le 25/01/2008 01:43:52 et modifié le 25/01/2008
consulté 3714 fois
Niveau débutant

Version(s) Foxpro :
VFP 9.0
VFP 8.0
VFP 7.0
VFP 6.0

Description
Bon voilà à tout hazard en me demandant bien pour la xieme fois ou sont donc cachés ces maudits chemins de fichiers que l'on ouvre durant une sessions de développement.

Personne ne semblait le savoir et je m'inclus puisque ca fait plus d'un an que je cherche.

La réponse est toute simple.

Tant que la session Vfp est ouverte, Fox loge dans la table FoxUser ou le champs ID = MRUH,MRUE,MRUR.... les fichiers de type formulaire, programme, les classes visuelles et en fin de compte tout ce que l'on peu ouvrir sous l'étiquette MRUx.

un exemple ci-bas vous retrouverez
Code source :
Clear
? GetMRU("prg")


*  /¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ GetMRU(tcExt)
* / Eddy Maue a+  --   Créer le : 2008-01-24
*
*    MRU = Most Recently Used
*
Procedure GetMRU
    Lparameters tcExt
    Local loMRU

    loMRU = Createobject("clssMRU")
    lcFile = loMRU.Get(tcExt)

    Release m.loMRU
    Clear Class clssMRU

    Return m.lcFile

Endproc

Define Class clssMRU As Session

    Procedure Get
        Lparameters tcExt

        Local lcExt As Character

        m.lcExt = Lower(m.tcExt)


        Local Array laMRU(1)
        Select Top 1 Id,Data ;
            From Sys(2005) ;
            Order By 1 Desc  ;
            Where "MRU" In (IdAnd "."+lcExt $ (Data) ;
            Into Array laMRU

        Return Iif(Vartype(laMRU)=="L" Or Alen(laMRU,2)<2;
            ,    ""    ;
            ,    Getwordnum(Chrtran(laMRU(2),Chr(0),";"),2,";"))

    Endproc
Enddefine

Commentaires
Aucun commentaire enregistré ...

Publicité

Les pubs en cours :

www.atoutfox.org - Site de la Communauté Francophone des Professionnels FoxPro - v3.4.0 - © 2004-2018.
Cette page est générée par un composant COM+ développé en Visual FoxPro 9.0