FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
Visionneuse pour PLM Emptypar Jack Aujourd'hui à 9:03

» Un autre pense-bête...
Visionneuse pour PLM Emptypar Froggy One Jeu 21 Nov 2024 - 14:54

» Récupération du contenu d'une page html.
Visionneuse pour PLM Emptypar Pedro Sam 16 Nov 2024 - 13:04

» Décompilation
Visionneuse pour PLM Emptypar JL35 Mar 12 Nov 2024 - 18:57

» Un album photos comme du temps des grands-mères
Visionneuse pour PLM Emptypar jjn4 Mar 12 Nov 2024 - 16:23

» traitement d'une feuille excel
Visionneuse pour PLM Emptypar jjn4 Jeu 7 Nov 2024 - 2:52

» Aide-mémoire mensuel
Visionneuse pour PLM Emptypar jjn4 Lun 4 Nov 2024 - 17:56

» Des incomprèhension avec Timer
Visionneuse pour PLM Emptypar Klaus Mer 30 Oct 2024 - 17:26

» KGF_dll - nouvelles versions
Visionneuse pour PLM Emptypar Klaus Mar 29 Oct 2024 - 16:58

» instructions panoramic
Visionneuse pour PLM Emptypar maelilou Lun 28 Oct 2024 - 18:51

» Figures fractales
Visionneuse pour PLM Emptypar Marc Ven 25 Oct 2024 - 10:18

» Panoramic et Scanette
Visionneuse pour PLM Emptypar Yannick Mer 25 Sep 2024 - 20:16

» Editeur d étiquette avec QR évolutif
Visionneuse pour PLM Emptypar JL35 Lun 23 Sep 2024 - 20:40

» BUG QR Code DelphiZXingQRCode
Visionneuse pour PLM Emptypar Yannick Dim 22 Sep 2024 - 9:40

» fichier.exe
Visionneuse pour PLM Emptypar leclode Ven 20 Sep 2024 - 17:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
Le Deal du moment : -29%
DYSON V8 Origin – Aspirateur balai sans fil
Voir le deal
269.99 €

 

 Visionneuse pour PLM

Aller en bas 
+3
Minibug
Jean Claude
Yannick
7 participants
AuteurMessage
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Visionneuse pour PLM Empty
MessageSujet: Visionneuse pour PLM   Visionneuse pour PLM EmptyLun 7 Sep 2015 - 17:32

la voilà !
elle est là !

Code:
hide 0
Variables_adresses()
Variables_objets()
Variables_projet()
Labels()
Init()
Gui()
show 0
end

' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
' DECLARATION DES VARIABLES ADRESSES
' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

SUB Variables_adresses()

   dim Path1$
   Path1$ = dir_current$
   if right$(Path1$,1)="" : Path1$ = left$(Path1$,len(Path1$)-1) : end_if
   Path1$ = Path1$+""
  
   dim Path2$
   Path2$ ="."
  
   dim Param$
   Param$ = "C:\Temp\Param.inf"
  
   dim kgf$
  
   dim url1$ : url1$="http://panoramiclemag.magix.net/public/Telechargements2/Articles.DAT"
   dim url2$ : url2$="http://panoramiclemag.magix.net/public/Telechargements2/Articles.IX"
   dim url3$ : url3$="http://panoramiclemag.magix.net/public/Telechargements2/Auteurs.DAT"
   dim url4$ : url4$="http://panoramiclemag.magix.net/public/Telechargements2/Auteurs.IX"
   dim url5$ : url5$="http://panoramiclemag.magix.net/public/Telechargements2/Mags.DAT"
   dim url6$ : url6$="http://panoramiclemag.magix.net/public/Telechargements2/Mags.IX"
   dim url7$ : url7$="http://panoramiclemag.magix.net/public/Telechargements2/Rubriques.DAT"
   dim url8$ : url8$="http://panoramiclemag.magix.net/public/Telechargements2/Rubriques.IX"

   dim fic1$ : fic1$=Path1$+"Articles.DAT"
   dim fic2$ : fic2$=Path1$+"Articles.IX"
   dim fic3$ : fic3$=Path1$+"Auteurs.DAT"
   dim fic4$ : fic4$=Path1$+"Auteurs.IX"
   dim fic5$ : fic5$=Path1$+"Mags.DAT"
   dim fic6$ : fic6$=Path1$+"Mags.IX"
   dim fic7$ : fic7$=Path1$+"Rubriques.DAT"
   dim fic8$ : fic8$=Path1$+"Rubriques.IX"
  
   dim  htm_file$ : htm_file$ = "C:\Temp\plm_reader.htm"
END_SUB
' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
' DECLARATION DES VARIABLES OBJETS
' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

SUB Variables_objets()
   dim_local i%

   dim no%
   dim frame0% : no%=no%+1 : frame0% = no%
   dim frame1% : no%=no%+1 : frame1% = no%
   dim frame2% : no%=no%+1 : frame2% = no%
   dim Alph%(5): for i%=1 to 5 : no%=no%+1 : Alph%(i%) = no% : next i%
   dim SearchType% : no%=no%+1 : SearchType% = no%
   dim ListeType%  : no%=no%+1 : ListeType%  = no%
   dim ListeArt%   : no%=no%+1 : ListeArt%   = no%
   dim Web%
  
   dim FR_open%  : no%=no%+1 : FR_open% = no%
   dim FW_open%  : no%=no%+1 : FW_open% = no%
  
   dim Opendial% : no%=no%+1 : Opendial% = no%
  
   dim ListeUrl% : no%=no%+1 : listeUrl% = no%
END_SUB
' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
' DECLARATION DES VARIABLES PROJET
' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

SUB Variables_projet()

'  événements
   dim nclic%
   dim nchange%
   dim ndclic%

'  bases de données
   dim ISAM_vers$
   dim Art_support$
   dim Mag_support$
   dim Rub_support$
   dim Aut_support$

   dim Art_ISAM_id%
   dim Mag_ISAM_id%
   dim Rub_ISAM_id%
   dim Aut_ISAM_id%

   dim Art_ISAM_is%
   dim Mag_ISAM_is%
   dim Rub_ISAM_is%
   dim Aut_ISAM_is%

   dim Art_ISAM_nam$
   dim Mag_ISAM_nam$
   dim Rub_ISAM_nam$
   dim Aut_ISAM_nam$

   dim Art_ISAM_exist%
   dim Mag_ISAM_exist%
   dim Rub_ISAM_exist%
   dim Aut_ISAM_exist%

   dim Art_ISAM_reclen%
   dim Mag_ISAM_reclen%
   dim Rub_ISAM_reclen%
   dim Aut_ISAM_reclen%

   dim Art_ISAM_rec$
   dim Mag_ISAM_rec$
   dim Rub_ISAM_rec$
   dim Aut_ISAM_rec$

   dim Art_ISAM_nbrec%
   dim Mag_ISAM_nbrec%
   dim Rub_ISAM_nbrec%
   dim Aut_ISAM_nbrec%
  
   dim Art_inbase%
   dim Mag_inbase%
   dim Rub_inbase%
   dim Aut_inbase%
  
'  cle selectionnée
   dim cle%
  
'  url$ pour visionneuse
   dim SelectedArt$
END_SUB
' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
' DECLARATION DES LABELS
' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

SUB Labels()
   Label Clic
   Label Change
   Label DClic
   Label Close
END_SUB
' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
' INITIALISATIONS
' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

SUB Init()
   dim_local res%,vers$,fic$,url$
  
'  verif de l' existence du dossier temp
   if dir_exists("C:\Temp")=0 : dir_make "C:\Temp" : end_if

'  définition de l' emplacement de kgf
   if file_exists(Param$)=1
      file_open_read FR_open%,Param$
      file_readln FR_open%,kgf$
      file_close FR_open%
   else
      SearchKGF()
   end_if

'  activation de kgf
   dll_on kgf$
  
'  vérification de la version de kgf
   vers$= string$(25," ")
   res% = DLL_call1("KGFdllVersion",adr(vers$))
   vers$= trim$(vers$)
   if res%<503
      message "Vous utilisez une version antérieur à la version :"+chr$(13)+"Veuillez mettre KGF.dll à jour avant de relancer l' application."
      dll_off
      Terminate
   end_if
  
'  téléchargement des fichiers de base de données
   res% = DLL_call2("DownloadFile",adr(url1$),adr(fic1$))
   res% = DLL_call2("DownloadFile",adr(url2$),adr(fic2$))
   res% = DLL_call2("DownloadFile",adr(url3$),adr(fic3$))
   res% = DLL_call2("DownloadFile",adr(url4$),adr(fic4$))
   res% = DLL_call2("DownloadFile",adr(url5$),adr(fic5$))
   res% = DLL_call2("DownloadFile",adr(url6$),adr(fic6$))
   res% = DLL_call2("DownloadFile",adr(url7$),adr(fic7$))
   res% = DLL_call2("DownloadFile",adr(url8$),adr(fic8$))
  
'  Initialisation de l' environnement
   res% = dll_call0("InitIsam")

'  Création des identifiants ISAM
'  articles
   Art_ISAM_is% = dll_call0("GetIsamIdentifierSize")
   Art_support$ = string$(Art_ISAM_is%," ")
   Art_ISAM_id% = dll_call1("CreateIsamIdentifier",adr(Art_support$))
'  mags
   Mag_ISAM_is% = dll_call0("GetIsamIdentifierSize")
   Mag_support$ = string$(Mag_ISAM_is%," ")
   Mag_ISAM_id% = dll_call1("CreateIsamIdentifier",adr(Mag_support$))
'  rubriques
   Rub_ISAM_is% = dll_call0("GetIsamIdentifierSize")
   Rub_support$ = string$(Rub_ISAM_is%," ")
   Rub_ISAM_id% = dll_call1("CreateIsamIdentifier",adr(Rub_support$))
'  auteurs
   Aut_ISAM_is% = dll_call0("GetIsamIdentifierSize")
   Aut_support$ = string$(Aut_ISAM_is%," ")
   Aut_ISAM_id% = dll_call1("CreateIsamIdentifier",adr(Aut_support$))
  
'  Vérification de l' existence des bases ISAM
'  articles
   Art_ISAM_nam$ =Path2$+"Articles"
   Art_ISAM_exist% = dll_call1("IsamFileExists",adr(Art_ISAM_nam$))
'  mags
   Mag_ISAM_nam$ =Path2$+"Mags"
   Mag_ISAM_exist% = dll_call1("IsamFileExists",adr(Mag_ISAM_nam$))
'  rubriques
   Rub_ISAM_nam$ =Path2$+"Rubriques"
   Rub_ISAM_exist% = dll_call1("IsamFileExists",adr(Rub_ISAM_nam$))
'  auteurs
   Aut_ISAM_nam$ =Path2$+"Auteurs"
   Aut_ISAM_exist% = dll_call1("IsamFileExists",adr(Aut_ISAM_nam$))
  
'  Ouverture des bases
'  articles
   if Art_ISAM_exist% =0
      res% = dll_call2("OpenIsamFile",Art_ISAM_id%,adr(Art_ISAM_nam$))
   end_if
'  mags
   if Mag_ISAM_exist% =0
      res% = dll_call2("OpenIsamFile",Mag_ISAM_id%,adr(Mag_ISAM_nam$))
   end_if
'  rubriques
   if Rub_ISAM_exist% =0
      res% = dll_call2("OpenIsamFile",Rub_ISAM_id%,adr(Rub_ISAM_nam$))
   end_if
'  auteurs
   if Aut_ISAM_exist% =0
      res% = dll_call2("OpenIsamFile",Aut_ISAM_id%,adr(Aut_ISAM_nam$))
   end_if
  
'  Récupération de la longueur des enregistrements
'  articles
   Art_ISAM_reclen% = dll_call1("GetIsamRecordLength",Art_ISAM_id%)
   Art_ISAM_rec$ = string$(Art_ISAM_reclen%," ")
'  mags
   Mag_ISAM_reclen% = dll_call1("GetIsamRecordLength",Mag_ISAM_id%)
   Mag_ISAM_rec$ = string$(Mag_ISAM_reclen%," ")
'  rubriques
   Rub_ISAM_reclen% = dll_call1("GetIsamRecordLength",Rub_ISAM_id%)
   Rub_ISAM_rec$ = string$(Rub_ISAM_reclen%," ")
'  auteurs
   Aut_ISAM_reclen% = dll_call1("GetIsamRecordLength",Aut_ISAM_id%)
   Aut_ISAM_rec$ = string$(Aut_ISAM_reclen%," ")

'  Récupération du nombre d' enregistrements dans chaque base
'  articles
   Art_inbase% = dll_call1("GetIsamRecordCount",Art_ISAM_id%)
'  mags
   Mag_inbase% = dll_call1("GetIsamRecordCount",Mag_ISAM_id%)
'  rubriques
   Rub_inbase% = dll_call1("GetIsamRecordCount",Rub_ISAM_id%)
'  auteurs
   Aut_inbase% = dll_call1("GetIsamRecordCount",Aut_ISAM_id%)
END_SUB
' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
' INTERFACE UTILISATEUR
' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

SUB Gui()
   dim_local h%,w%,res%,u$

   height 0,650
   width 0,1000
   top 0,(screen_y-height(0))/2
   left 0,(screen_x-width(0))/2
   on_close 0,Close
  
   caption 0,"PLM Reader - Vs 2.0"
   font_name 0,"Arial"
   font_size 0,8
  
   Panel frame0%
   full_space frame0%
   h% = height(frame0%)
   w% = width(frame0%)
   hide frame0%
  
   Panel frame1%
   height frame1%,h%
   width frame1%,300
  
   Alpha Alph%(1)
   parent Alph%(1),frame1%
   top Alph%(1),10
   left Alph%(1),10
   caption Alph%(1),"Type de recherche"
   font_bold Alph%(1)
  
   Combo SearchType%
   parent SearchType%,frame1%
   width SearchType%,280
   top SearchType%,30
   left SearchType%,10
   RempSearchType()
   on_click SearchType%,clic
  
   List ListeType%
   parent ListeType%,frame1%
   width ListeType%,280
   height ListeType%,200
   top ListeType%,55
   left ListeType%,10
   on_double_click ListeType%,dclic
   cursor_point ListeType%
  
   Alpha Alph%(2)
   parent Alph%(2),frame1%
   top Alph%(2),270
   left Alph%(2),10
   caption Alph%(2),"Liste des articles"
   font_bold Alph%(2)
  
   List ListeArt%
   parent ListeArt%,frame1%
   width ListeArt%,280
   height ListeArt%,310
   top ListeArt%,290
   left ListeArt%,10
   on_double_click ListeArt%,dclic
   cursor_point ListeArt%
  
   Panel frame2%
   height frame2%,h%
   width frame2%,w%-width(frame1%)
   left frame2%,width(frame1%)
  
   Web% = dll_call1("WB_Create",handle(frame2%))
   res% = dll_call5("WB_Locate",WeB%,0,0,width(frame2%),height(frame2%))
   CreatePageHtml(0)

   Dlist ListeUrl%
END_SUB
' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
' MENUS EVENEMENTS
' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Clic:
   nclic% = number_click
   if nclic% = SearchType% : SelectKeySearch(item_index(SearchType%)) :return : end_if
return

Change:
return

DClic:
   ndclic% = number_double_click
   if ndclic% = ListeType% : AffichListeArt(item_index(ListeType%)) : return : end_if
   if ndclic% = ListeArt%  : CreatePageHtml(item_index(ListeArt%))  : return : end_if
return

Close:
   Quitter()
return
' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
' FONCTIONS APPLICATION
' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

SUB RempSearchType()
    item_add SearchType%,"N° d' article"
    item_add SearchType%,"N° de Magazine"
    item_add SearchType%,"Rubrique"
    item_add SearchType%,"Auteur"
END_SUB

SUB SearchKGF()
    dim_local a$
    a$="PLM Reader nécessite KGF.dll !"+chr$(13)
    a$=a$+"Indiquer le chemin de KGF.dll maintenant ?"
    if Message_warning_yes_no(a$)=1
       Open_dialog Opendial%
       dir_dialog Opendial%,"C:"
       filter Opendial%,"*.dll|*.dll"
       a$=file_name$(Opendial%)
       delete Opendial%
       if a$<>"_"
          file_open_write FW_open%,Param$
          file_writeln FW_open%,a$
          file_close FW_open%
          kgf$ = a$
       else
          Terminate
       end_if
    else
       terminate
    end_if
END_SUB

SUB Quitter()
   dim_local fin%
   fin% = dll_call1("CloseIsamFile",Art_Isam_ID%)
   fin% = dll_call1("CloseIsamFile",Mag_Isam_ID%)
   fin% = dll_call1("CloseIsamFile",Rub_Isam_ID%)
   fin% = dll_call1("CloseIsamFile",Aut_Isam_ID%)
  
   File_delete Path1$+"Articles.DAT"
   File_delete Path1$+"Articles.IX"
   File_delete Path1$+"Mags.DAT"
   File_delete Path1$+"Mags.IX"
   File_delete Path1$+"Auteurs.DAT"
   File_delete Path1$+"Auteurs.IX"
   File_delete Path1$+"Rubriques.DAT"
   File_delete Path1$+"Rubriques.IX"
END_SUB
' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
' FONCTIONS BASE DE DONNEES
' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

SUB SelectKeySearch(N%)
   dim_local i%,res%,fill$,v$,key$
   cle%=N%
   Clear ListeType%
   select cle%
   case 1
      for i%=1 to Art_inbase%
         key$ = "ART"+right$(string$(4,"0")+str$(i%),4)
         item_add ListeType%,key$
      next i%
   case 2
      for i%=1 to Mag_inbase%
         key$ = right$(string$(4,"0")+str$(i%),4)
         Mag_ISAM_NbRec% = dll_call4("ReadIsamRecordByKey",Mag_Isam_ID%,adr(Mag_ISAM_rec$),1,adr(key$))
         res% = dll_call0("GetIsamOk")
         if res%=0
            v$=string$(4," ")  : fill$ =" "
            res% = dll_call5("ExtractIsamField",Mag_Isam_ID%,1,adr(Mag_ISAM_rec$),adr(v$),adr(fill$))
            v$=string$(30," ")  : fill$ =" "
            res% = dll_call5("ExtractIsamField",Mag_Isam_ID%,2,adr(Mag_ISAM_rec$),adr(v$),adr(fill$))
            item_add ListeType%,v$
         end_if
      next i%
   case 3
      for i%=1 to Rub_inbase%
         res% = dll_call1("IsamFileIsOpen",Rub_Isam_ID%)
         if res%<0
            message "Le fichier ISAM est fermé !"
            exit_sub
         end_if
         key$ = right$(string$(4,"0")+str$(i%),4)
         Rub_ISAM_NbRec% = dll_call4("ReadIsamRecordByKey",Rub_Isam_ID%,adr(Rub_ISAM_rec$),1,adr(key$))
         res% = dll_call0("GetIsamOk")
         if res%=0
            v$=string$(4," ")  : fill$ =" "
            res% = dll_call5("ExtractIsamField",Rub_Isam_ID%,1,adr(Rub_ISAM_rec$),adr(v$),adr(fill$))
            v$=string$(30," ")  : fill$ =" "
            res% = dll_call5("ExtractIsamField",Rub_Isam_ID%,2,adr(Rub_ISAM_rec$),adr(v$),adr(fill$))
            item_add ListeType%,v$
         end_if
      next i%
   case 4
      for i%=1 to Aut_inbase%
         res% = dll_call1("IsamFileIsOpen",Aut_Isam_ID%)
         if res%<0
            message "Le fichier ISAM est fermé !"
            exit_sub
         end_if
         key$ = right$(string$(4,"0")+str$(i%),4)
         Aut_ISAM_NbRec% = dll_call4("ReadIsamRecordByKey",Aut_Isam_ID%,adr(Aut_ISAM_rec$),1,adr(key$))
         res% = dll_call0("GetIsamOk")
         if res%=0
            v$=string$(4," ")  : fill$ =" "
            res% = dll_call5("ExtractIsamField",Aut_Isam_ID%,1,adr(Aut_ISAM_rec$),adr(v$),adr(fill$))
            v$=string$(30," ")  : fill$ =" "
            res% = dll_call5("ExtractIsamField",Aut_Isam_ID%,2,adr(Aut_ISAM_rec$),adr(v$),adr(fill$))
            item_add ListeType%,v$
         end_if
      next i%
   end_select
END_SUB

SUB AffichListeArt(item%)
   dim_local i%,res%,fill$,v1$,v2$,v3$,v4$,v5$,key$,a$
   Clear ListeArt%
   Clear ListeUrl%
   if cle%=1
      key$ = "ART"+right$(string$(4,"0")+str$(item%),4)
      Art_ISAM_rec$ = string$(Art_ISAM_reclen%," ")
      Art_ISAM_NbRec% = dll_call4("ReadIsamRecordByKey",Art_Isam_ID%,adr(Art_ISAM_rec$),1,adr(key$))
      res% = dll_call0("GetIsamOk")
      if res%=0
         WriteARTinListe()
      end_if
   else
      key$ = right$(string$(4,"0")+str$(item%),4)
      Art_ISAM_rec$ = string$(Art_ISAM_reclen%," ")
      Art_ISAM_NbRec% = dll_call4("ReadIsamRecordByKey",Art_Isam_ID%,adr(Art_ISAM_rec$),cle%,adr(key$))
      res% = dll_call0("GetIsamOk")
      if res%=0
         WriteARTinListe()
      end_if
      while Art_ISAM_NbRec% >0
         Art_ISAM_rec$ = string$(Art_ISAM_reclen%," ")
         res% = dll_call4("CreateIsamKey",Art_Isam_ID%,adr(Art_ISAM_rec$),cle%,adr(key$))
         Art_ISAM_NbRec% = dll_call4("ReadNextIsamRecord",Art_Isam_ID%,adr(Art_ISAM_rec$),cle%,adr(key$))
         if Art_ISAM_NbRec% >0
            if val(key$)=item%
               WriteARTinListe()
            end_if
         end_if
      end_while
   end_if
END_SUB

SUB WriteARTinListe()
   dim_local res%,fill$,v1$,v2$,v3$,v4$,v5$,key$,a$
   v1$=string$(7," ")  : fill$ =" "
   res% = dll_call5("ExtractIsamField",Art_Isam_ID%,1,adr(Art_ISAM_rec$),adr(v1$),adr(fill$))
   a$=a$+v1$
   v2$=string$(4," ")  : fill$ =" "
   res% = dll_call5("ExtractIsamField",Art_Isam_ID%,2,adr(Art_ISAM_rec$),adr(v2$),adr(fill$))
   a$=a$+v2$
   v3$=string$(4," ")  : fill$ =" "
   res% = dll_call5("ExtractIsamField",Art_Isam_ID%,3,adr(Art_ISAM_rec$),adr(v3$),adr(fill$))
   a$=a$+v3$
   v4$=string$(4," ")  : fill$ =" "
   res% = dll_call5("ExtractIsamField",Art_Isam_ID%,4,adr(Art_ISAM_rec$),adr(v4$),adr(fill$))
   a$=a$+v4$
   v5$=string$(255," ")  : fill$ =" "
   res% = dll_call5("ExtractIsamField",Art_Isam_ID%,5,adr(Art_ISAM_rec$),adr(v5$),adr(fill$))
   a$=a$+v5$
   item_add ListeArt%,v5$
   item_add ListeUrl%,a$
   v1$="" : v2$="" :v3$="" :v4$="" :v5$="" : a$=""
END_SUB
' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
' DATAS
' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

SUB CreatePageHtml(A%)
   dim_local i%,a$,b$,u$,res%
   if A% =0
      SelectedArt$ = "plmapp.pdf"
   else
      SelectedArt$ = item_read$(ListeUrl%,A%)
   end_if
   file_open_write FW_open%,htm_file$
   restore
   for i%=1 to 62 : read a$ : b$=b$+chr$(val(a$)) : next i%  :file_writeln FW_open%,b$ : b$=""
   for i%=1 to 16 : read a$ : b$=b$+chr$(val(a$)) : next i%  :file_writeln FW_open%,b$ : b$=""
   for i%=1 to 6  : read a$ : b$=b$+chr$(val(a$)) : next i%  :file_writeln FW_open%,b$ : b$=""
   for i%=1 to 25 : read a$ : b$=b$+chr$(val(a$)) : next i%  :file_writeln FW_open%,b$ : b$=""
   for i%=1 to 70 : read a$ : b$=b$+chr$(val(a$)) : next i%  :file_writeln FW_open%,b$ : b$=""
   for i%=1 to 7  : read a$ : b$=b$+chr$(val(a$)) : next i%  :file_writeln FW_open%,b$ : b$=""
   for i%=1 to 6  : read a$ : b$=b$+chr$(val(a$)) : next i%  :file_writeln FW_open%,b$ : b$=""
   for i%=1 to 20 : read a$ : b$=b$+chr$(val(a$)) : next i%  :file_writeln FW_open%,b$ : b$=""
   for i%=1 to 64 : read a$ : b$=b$+chr$(val(a$)) : next i%  :b$=b$+SelectedArt$
   for i%=1 to 53 : read a$ : b$=b$+chr$(val(a$)) : next i%  :file_writeln FW_open%,b$ : b$=""
   for i%=1 to 7  : read a$ : b$=b$+chr$(val(a$)) : next i%  :file_writeln FW_open%,b$ : b$=""
   for i%=1 to 7  : read a$ : b$=b$+chr$(val(a$)) : next i%  :file_writeln FW_open%,b$ : b$=""
   for i%=1 to 7  : read a$ : b$=b$+chr$(val(a$)) : next i%  :file_writeln FW_open%,b$ : b$=""
   File_close FW_open%

   res% = dll_call2("WB_Url",WeB%,adr(htm_file$))
END_SUB

data "60","33","68","79","67","84","89","80","69","32","72","84","77","76","32","80","85","66","76","73","67","32","34"
data "45","47","47","87","51","67","47","47","68","84","68","32","72","84","77","76","32","52","46","48","49","32","84"
data "114","97"
data "110","115","105","116","105","111","110","97","108","47","70","82","34","62"
data "60","104","116","109","108","32","108","97","110","103","61","34","102","114","34","62"
data "60","104","101","97","100","62"
data "9","60","116","105","116","108","101","62","65","114","116","105","99","108","101","32","49","60","47","116","105"
data "116","108","101","62"
data "9","60","109","101","116","97","32","104","116","116","112","45","101","113","117","105","118","61","34","67","111"
data "110","116","101","110","116","45","84","121","112","101","34","32","99","111","110","116","101","110","116","61","34"
data "116","101","120","116","47","104","116","109","108","59","32","99","104","97","114","115","101","116","61","85","84"
data "70"
data "45","56","34","32","47","62"
data "60","47","104","101","97","100","62"
data "60","98","111","100","121","62"
data "9","60","100","105","118","32","32","105","100","61","34","65","114","116","105","99","108","101","34","62"
data "9","9","60","79","66","74","69","67","84","32","100","97","116","97","61","34","104","116","116","112","58","47","47"
data "112","97","110","111","114","97","109","105","99","108","101","109","97","103","46","109","97","103","105","120","46"
data "110","101","116","47","112","117","98","108","105","99","47","65","114","116","105","99","108","101","115","47"
data "34","32","119","105","100","116","104","61","54","53","48","32","104","101","105","103","104","116","61","53","55"
data "48","32","116","121","112","101","61","97","112","112","108","105","99","97","116","105","111","110","47","112"
data "100","102","62","60","47","79","66","74","69","67","84","62"
data "9","60","47","100","105","118","62"
data "60","47","98","111","100","121","62"
data "60","47","104","116","109","108","62"

J' aurai mis le temps mais elle est là... Laughing


Dernière édition par ygeronimi le Mar 8 Sep 2015 - 17:01, édité 1 fois
Revenir en haut Aller en bas
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 70
Localisation : 83 Var
Date d'inscription : 07/05/2009

Visionneuse pour PLM Empty
MessageSujet: Re: Visionneuse pour PLM   Visionneuse pour PLM EmptyLun 7 Sep 2015 - 18:20

C'est pas mal, bien que ce tri peut se faire directement sur le site du MAG.

Mais c'est un beau travail et utile.

A+
Revenir en haut Aller en bas
Minibug

Minibug


Nombre de messages : 4570
Age : 58
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

Visionneuse pour PLM Empty
MessageSujet: Re: Visionneuse pour PLM   Visionneuse pour PLM EmptyLun 7 Sep 2015 - 19:44

Salut ygeronimi !

chez moi ça ne fonctionne pas !

Ton programme a l'air de tourner rond, mais c'est l'affichage de la page qui pose problème.
J'ai juste une petite croix rouge en haut a gauche de la page d'affichage de droite.

Sinon j'ai bien les menus et l'affichage des différents éléments a gauche. Wink
J'ai mis la toute dernière version de KGF. j'utilise CHROME comme navigateur pas défaut

Si tu as une idée...
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

Visionneuse pour PLM Empty
MessageSujet: Re: Visionneuse pour PLM   Visionneuse pour PLM EmptyLun 7 Sep 2015 - 19:50

Not correct expression or negative ... line 248 ( Art_ISAM_rec$ = string$(Art_ISAM_reclen%," "))
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Visionneuse pour PLM Empty
MessageSujet: Re: Visionneuse pour PLM   Visionneuse pour PLM EmptyLun 7 Sep 2015 - 20:45

Salut tout le monde.
Moi aussi, j’utilise Chrome et c’est NICKEL !
Bravo Ygeronimi, ça fonctionne comme sur des roulettes !
Beau travail !

EDIT :
Tu aurais pu écourter les lignes DATA pour éviter la très large page sur le Forum. Laughing
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 70
Localisation : 83 Var
Date d'inscription : 07/05/2009

Visionneuse pour PLM Empty
MessageSujet: Re: Visionneuse pour PLM   Visionneuse pour PLM EmptyMar 8 Sep 2015 - 5:42

Papydall a écrit:
Tu aurais pu écourter les lignes DATA pour éviter la très large page sur le Forum.

Oui c'est vrai, mais il me semble que le visualiseur de code du forum (MEMO ?) comporte des ascenseurs.
Donc, il ne devrait pas y avoir ce problème. Il faut que l'hébergeur réduise la largeur de ce MEMO.
Heureusement, qu'il n'y a pas le même problème en hauteur.


@Ygeronimi,
Juste pour pinailler Very Happy  et dire quelque chose.

Soit tu mets le FORM en BORDER_SMALL, soit le MEMO s'agrandit si on maximise.
Bon, je sors.

A+
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Visionneuse pour PLM Empty
MessageSujet: re   Visionneuse pour PLM EmptyMar 8 Sep 2015 - 7:19

@ Minibug,

Je ne pense pas que ce soit lié à chrome, j' utilise les fonctions de kgf basées sur IE.
Peut être une histoire de blocage des plugs in pour la lecture des *.pdf.
là, je sèche. 

@ Jicehel,

J' ai eu ce problème une fois au premier lancement, j' ai relancé et plus rien.
je pense qu' une fonction commence avant qu' une autre ait fini.
je vais essayer de placer un wait, il s' agit de fonctions dll.
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Visionneuse pour PLM Empty
MessageSujet: re   Visionneuse pour PLM EmptyMar 8 Sep 2015 - 7:33

@ Minibug,

Par curiosité, va dans "C:\Temp" et lance "plm_reader.htm"
Revenir en haut Aller en bas
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

Visionneuse pour PLM Empty
MessageSujet: Re: Visionneuse pour PLM   Visionneuse pour PLM EmptyMar 8 Sep 2015 - 8:06

@ygeronimi. J'essayerais de mettre de wait ce soir sauf si tu trouves une autre solution entre les 2.
A priori, ça doit être à l'ouverture de la base
Revenir en haut Aller en bas
Minibug

Minibug


Nombre de messages : 4570
Age : 58
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

Visionneuse pour PLM Empty
MessageSujet: Re: Visionneuse pour PLM   Visionneuse pour PLM EmptyMar 8 Sep 2015 - 9:42

Salut

Citation :
Par curiosité, va dans "C:\Temp" et lance "plm_reader.htm"

Oui ça affiche bien la page !
Et là ou boulot, j'ai un message sur la page de droite (je pense que c'est le programme PDF) qui marque INITIALISATION EN COURS et il ne se passe rien...

Bizarre, 2 PC différents et aucun des 2 n'affiche la page correctement !!
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Minibug

Minibug


Nombre de messages : 4570
Age : 58
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

Visionneuse pour PLM Empty
MessageSujet: Re: Visionneuse pour PLM   Visionneuse pour PLM EmptyMar 8 Sep 2015 - 9:46

voici la page en question :

Visionneuse pour PLM Plm10
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Visionneuse pour PLM Empty
MessageSujet: Re   Visionneuse pour PLM EmptyMar 8 Sep 2015 - 10:41

Je suis avec "Opéra" en navigateur par defaut.
Visionneuse pour PLM Captur23
Visionneuse pour PLM Captur24

Essai de ré-installer le plug-in d' acrobat-reader...
Revenir en haut Aller en bas
Mike

Mike


Nombre de messages : 31
Age : 73
Localisation : NANCY
Date d'inscription : 12/06/2007

Visionneuse pour PLM Empty
MessageSujet: Re: Visionneuse pour PLM   Visionneuse pour PLM EmptyMar 8 Sep 2015 - 16:26

Bonjour à tous,

Bravo Ygeronimi, cela fonctionne parfaitement chez moi.
Je suis sous W7 et Mozilla Firefox.
Cette implémentation des fichiers Isam dans Panoramic va permettre de faire beaucoup de choses.
Bravo au maître Klaus

Par contre, j'ai essayé le programme tel que défini dans le mag concernant les villes.
Cela ne fonctionne pas chez moi. Le début est OK ( téléchargement du CSV, création du txt , création du fichiers Villes. IX et Villes .DAT.
Puis erreur à la ligne 222:

Not correct expression or negative ... line 222 rec$ = string$(reclen%," ")

J'ai réessayé plusieurs fois de suite en écrasant les fichiers générés et c'est pareil.
Même chose en réécrivant un fichier source
Je ne sais pas si d'autres ont essayé ce programme mais quand j'ai vu le message d'erreur de Jicehel :

Not correct expression or negative ... line 248 ( Art_ISAM_rec$ = string$(Art_ISAM_reclen%," "))

Je me suis dit qu'il y avait là un point commun avec reclen%

Bonne soirée à tous
Mike
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Visionneuse pour PLM Empty
MessageSujet: re   Visionneuse pour PLM EmptyMar 8 Sep 2015 - 16:46

J' ai mis un zip sur mon webdav corrigeant l' erreur
de Jicehel.

Le problème vient, il me semble de l' événementiel.
lorsque l' on lance un programme, il effectue les taches les une après les autres
dans l' ordre établit par le programmeur.
Ceci est vrai dans le cas d' un programme tout Panoramic, sauf que. Evil or Very Mad
Lors de l' emploi d' une dll avec plusieurs de ses fonctions, si les fonctions sont bien lancées les unes
après les autres dans cet ordre établit, le lancement de la deuxième n' attends pas le résultat de la première.
ce qui donne ce petit souci.
Il faut donc, conditionner le lancement de la deuxième en fonction du résultat de la première ne serait ce que
par un "if....end_if".

Ceci n' est que mon avis, je peux être dans l' horreur...heu...l' erreur.
Klaus sera sûrement plus apte à répondre. Laughing
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Visionneuse pour PLM Empty
MessageSujet: Re: Visionneuse pour PLM   Visionneuse pour PLM EmptyMar 8 Sep 2015 - 17:11

Là, tu m'étonnes, Ygeronimi. A ma connaissance, les seules fonctions qui retournent sans garantie d'exécution complète, ce sont les fonctions de traitement d'images qui manipulent le presse-papier, dans un sans ou un autre. On en maîtrise pas la gestion du presse-papier. Par contre, tout ce qui touche à ISAM,est bien terminé lorsque la fonction retourne. Aucun doute là-dessus.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Visionneuse pour PLM Empty
MessageSujet: re   Visionneuse pour PLM EmptyMar 8 Sep 2015 - 17:16

Oui mais que se passe t il si une deuxième fonction qui a besoin du résultat de la première
est lancé avant que la première fonction soit terminée ?...
drunken
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Visionneuse pour PLM Empty
MessageSujet: re   Visionneuse pour PLM EmptyMar 8 Sep 2015 - 17:21

dans le cas de PLM Reader je lançais l' ouverture des bases ( il y en a 4 ) puis je récupérait les longueurs des enregistrements

Code:
'  Ouverture des bases
'  articles
  if Art_ISAM_exist% =0
      res% = dll_call2("OpenIsamFile",Art_ISAM_id%,adr(Art_ISAM_nam$))
  end_if
'  mags
  if Mag_ISAM_exist% =0
      res% = dll_call2("OpenIsamFile",Mag_ISAM_id%,adr(Mag_ISAM_nam$))
      Mag_ISAM_reclen% = dll_call1("GetIsamRecordLength",Mag_ISAM_id%)
      Mag_ISAM_rec$ = string$(Mag_ISAM_reclen%," ")
  end_if
'  rubriques
  if Rub_ISAM_exist% =0
      res% = dll_call2("OpenIsamFile",Rub_ISAM_id%,adr(Rub_ISAM_nam$))
  end_if
'  auteurs
  if Aut_ISAM_exist% =0
      res% = dll_call2("OpenIsamFile",Aut_ISAM_id%,adr(Aut_ISAM_nam$))
  end_if

'  Récupération de la longueur des enregistrements
'  articles
      Art_ISAM_reclen% = dll_call1("GetIsamRecordLength",Art_ISAM_id%)
      Art_ISAM_rec$ = string$(Art_ISAM_reclen%," ")
'  mags
      Mag_ISAM_reclen% = dll_call1("GetIsamRecordLength",Mag_ISAM_id%)
      Mag_ISAM_rec$ = string$(Mag_ISAM_reclen%," ")
'  rubriques
      Rub_ISAM_reclen% = dll_call1("GetIsamRecordLength",Rub_ISAM_id%)
      Rub_ISAM_rec$ = string$(Rub_ISAM_reclen%," ")
'  auteurs
      Aut_ISAM_reclen% = dll_call1("GetIsamRecordLength",Aut_ISAM_id%)
      Aut_ISAM_rec$ = string$(Aut_ISAM_reclen%," ")

là il y a l' erreur car  : Art_ISAM_reclen% = 0



Code:
'  Ouverture des bases
'  Récupération de la longueur des enregistrements
'  articles
  if Art_ISAM_exist% =0
      res% = dll_call2("OpenIsamFile",Art_ISAM_id%,adr(Art_ISAM_nam$))
      Art_ISAM_reclen% = dll_call1("GetIsamRecordLength",Art_ISAM_id%)
      Art_ISAM_rec$ = string$(Art_ISAM_reclen%," ")
  end_if
'  mags
  if Mag_ISAM_exist% =0
      res% = dll_call2("OpenIsamFile",Mag_ISAM_id%,adr(Mag_ISAM_nam$))
      Mag_ISAM_reclen% = dll_call1("GetIsamRecordLength",Mag_ISAM_id%)
      Mag_ISAM_rec$ = string$(Mag_ISAM_reclen%," ")
  end_if
'  rubriques
  if Rub_ISAM_exist% =0
      res% = dll_call2("OpenIsamFile",Rub_ISAM_id%,adr(Rub_ISAM_nam$))
      Rub_ISAM_reclen% = dll_call1("GetIsamRecordLength",Rub_ISAM_id%)
      Rub_ISAM_rec$ = string$(Rub_ISAM_reclen%," ")
  end_if
'  auteurs
  if Aut_ISAM_exist% =0
      res% = dll_call2("OpenIsamFile",Aut_ISAM_id%,adr(Aut_ISAM_nam$))
      Aut_ISAM_reclen% = dll_call1("GetIsamRecordLength",Aut_ISAM_id%)
      Aut_ISAM_rec$ = string$(Aut_ISAM_reclen%," ")
  end_if



Là, plus d' erreur.

Revenir en haut Aller en bas
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

Visionneuse pour PLM Empty
MessageSujet: Re: Visionneuse pour PLM   Visionneuse pour PLM EmptyMar 8 Sep 2015 - 18:54

Oui, je confirme, comme ça, ça ne bloque plus.
Ca fonctionne même très bien, la lecture est rapide et la recherche très simple.
Eventuellement, on pourrait imaginer des moteurs de recherches plus complexe mais est-ce bien utile ? Très joli programme qui facilite la navigation dans les articles.

Revenir en haut Aller en bas
Minibug

Minibug


Nombre de messages : 4570
Age : 58
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

Visionneuse pour PLM Empty
MessageSujet: Re: Visionneuse pour PLM   Visionneuse pour PLM EmptyMar 8 Sep 2015 - 20:29

bon, moi j'abandonne !! scratch drunken
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Visionneuse pour PLM Empty
MessageSujet: Re: Visionneuse pour PLM   Visionneuse pour PLM EmptyMar 8 Sep 2015 - 20:50

Chez moi, ça a marché du premier coup.
Thank you Ygeronimi.

Minibug a écrit:
bon, moi j'abandonne !!    

Hé,là c’est une entorse à la Devise Shadok Laughing
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Minibug

Minibug


Nombre de messages : 4570
Age : 58
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

Visionneuse pour PLM Empty
MessageSujet: Re: Visionneuse pour PLM   Visionneuse pour PLM EmptyMar 8 Sep 2015 - 21:24

Oui Papydall, tu as raison !

Mais je ne vais pas me prendre la tête, en sachant que je peux le voir ailleurs... Wink
Donc no soucis ! bom
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Visionneuse pour PLM Empty
MessageSujet: re   Visionneuse pour PLM EmptyMer 9 Sep 2015 - 13:05

Dommage que cela ne veuille pas fonctionner chez toi...
Sad

Ce qui est encore plus dommage, c' est de ne pas avoir la solution car
cela pourrait se reproduire chez d' autres...
Wink
Revenir en haut Aller en bas
Mike

Mike


Nombre de messages : 31
Age : 73
Localisation : NANCY
Date d'inscription : 12/06/2007

Visionneuse pour PLM Empty
MessageSujet: Encore Isam pour retour d'expérience   Visionneuse pour PLM EmptyMar 15 Sep 2015 - 17:56

Bonsoir à tous,

Je reviens sur le mag et le fichier Villes.
J'ai cherché pourquoi il ne fonctionnait pas (chez moi) et je pense avoir trouvé.
Tout vient de la fonction "GetIsamRecordLength" et par conséquent la variable RecLen qui n'a pas été déclarée
En effet, la DLL de klaus dit bien d'ajouter l'identifiant ISAM s'il n'a pas été défini

res% = dll_call1("GetIsamRecordLength",IsamID%)

La ligne suivante : reclen% = dll_call0("GetIsamRecordLength")
Renvoie une erreur

Si elle est remplacée par : reclen% = dll_call1("GetIsamRecordLength",isamID%)
c'est OK et permet de finaliser le programme

@ Klaus
Merci de confirmer car je ne voudrais pas partir sur une erreur d'appréciation

Mike
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Visionneuse pour PLM Empty
MessageSujet: Re: Visionneuse pour PLM   Visionneuse pour PLM EmptyMar 15 Sep 2015 - 22:00

Absolument exact, Mike !

La version "sans paramètre" de cette fonction est une version ancienne aui a été modifiée depuis, et la doc actuelle reflète bien l'état actuel. J'ai été conduit à faire l'ajout de ce paramètre pour pouvoir gérer de façon plus "simple" la gestion de plusieurs fichiers ISAM simultanés. Auparavant, cette fonction s'appliquait au dernier fichier ISAM accédé (et dont les paramètres étaient chargés dans la zone "active" de la gestion des fichiers ISAM). La version actuelle permet de connaître la longueur d'enregistrement de n'importe quel fichier ISAM ouvert, qu'il ait été accédé ou non juste avant.

Donc, oui: il faut bien utiliser la version:
Code:
dim res%
res% = dll_call1("GetIsamRecordLength",IsamID%)
comme le dit la doc.

Bravo, Mike !
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Contenu sponsorisé





Visionneuse pour PLM Empty
MessageSujet: Re: Visionneuse pour PLM   Visionneuse pour PLM Empty

Revenir en haut Aller en bas
 
Visionneuse pour PLM
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» visionneuse de Bmp ou jpg en Panoramic
» comment lancer la visionneuse photo?
» Aide-mémoire des mots-clés Panoramic
» Aide pour la création d'un wrapper pour le langage Linotte.
» Petits jeux pour enfants et pour moins jeunes

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Panoramic - Le Mag-
Sauter vers: