]> git.parisson.com Git - telemeta-data.git/commitdiff
add new 4D export method
authoryomguy <yomguy@3bf09e05-f825-4182-b9bc-eedd7160adf0>
Tue, 17 May 2011 13:44:55 +0000 (13:44 +0000)
committeryomguy <yomguy@3bf09e05-f825-4182-b9bc-eedd7160adf0>
Tue, 17 May 2011 13:44:55 +0000 (13:44 +0000)
git-svn-id: http://svn.parisson.org/svn/crem@183 3bf09e05-f825-4182-b9bc-eedd7160adf0

trunk/import/raw_conversion/export.4d_4.txt [new file with mode: 0644]

diff --git a/trunk/import/raw_conversion/export.4d_4.txt b/trunk/import/raw_conversion/export.4d_4.txt
new file mode 100644 (file)
index 0000000..483d2ab
--- /dev/null
@@ -0,0 +1,187 @@
+  `Export de toutes les tables
+
+C_ALPHA(1;$fieldDelimiter;$recordDelimiter)
+C_ALPHA(32;$tableName;$fieldName)
+C_ENTIER LONG($numberOfTables;$tableNumber;$numberOfFields;$fieldNumber)
+C_ENTIER LONG($numberOfRecords)
+C_ENTIER LONG($fieldType)
+C_POINTEUR($tablePtr;$fieldPtr)
+C_TEXTE($fieldValue)
+C_HEURE($documentReference)
+C_REEL($Plateforme)
+PROPRIETES PLATE FORME($Plateforme)
+
+$fieldDelimiter:=Caractere(9)
+$recordDelimiter:=Caractere(10)
+
+$numberOfTables:=Nombre de tables
+
+Boucle ($tableNumber;1;$numberOfTables)
+  
+  $tablePtr:=Table($tableNumber)
+  $tableName:=Nom de la table($tableNumber)
+  
+  $documentReference:=Creer document("C:\export_crem\"+$tableName+".txt";"TEXT")
+  
+  Si (OK=1)
+    $numberOfFields:=Nombre de champs($tableNumber)
+    
+    Boucle ($fieldNumber;1;$numberOfFields)
+      $fieldName:=Nom du champ($tableNumber;$fieldNumber)
+      Si ($fieldNumber#$numberOfFields)
+        Si ($Plateforme=Windows )
+          ENVOYER PAQUET($documentReference;Mac vers Windows($fieldName)+$fieldDelimiter)
+          
+        Sinon 
+          ENVOYER PAQUET($documentReference;$fieldName+$fieldDelimiter)
+          
+        Fin de si 
+      Sinon 
+        Si ($plateforme=Windows )
+          ENVOYER PAQUET($documentReference;Mac vers Windows($fieldName)+$recordDelimiter)
+          
+        Sinon 
+          ENVOYER PAQUET($documentReference;$fieldName+$recordDelimiter)
+          
+        Fin de si 
+      Fin de si 
+    Fin de boucle 
+    
+    TOUT SELECTIONNER($tablePtr->)
+    $numberOfRecords:=Enregistrements trouves($tablePtr->)
+    
+    Boucle ($recordNumber;1;$numberOfRecords)
+      
+      Boucle ($fieldNumber;1;$numberOfFields)
+        
+        $fieldPtr:=Champ($tableNumber;$fieldNumber)
+        PROPRIETES CHAMP($fieldPtr;$fieldType)
+        
+        Au cas ou 
+          : (($fieldType=Is Integer ) | ($fieldType=Is LongInt ))
+            $fieldValue:=Chaine($fieldPtr->)
+          : ($fieldType=Is Date )
+            $fieldValue:=Chaine($fieldPtr->;7)
+          : ($fieldType=Is Time )
+            $fieldValue:=Chaine($fieldPtr->;1)
+          : ($fieldType=Is Boolean )
+            $fieldValue:=Chaine(Num($fieldPtr->);"VRAI;;FAUX")
+          : ($fieldType=Is Picture )
+            $fieldValue:="Image non exportée"
+          : ($fieldType=Is BLOB )
+            $fieldValue:="BLOB non exporté"
+          : ($fieldType=Is Subtable )
+            $fieldValue:="Sous-table non exportée"
+          Sinon 
+            $fieldValue:=$fieldPtr->
+            $fieldValue:=Remplacer chaine($fieldValue;$fieldDelimiter;" ")
+            $fieldValue:=Remplacer chaine($fieldValue;$recordDelimiter;" ")
+            $fieldValue:=Remplacer chaine($fieldValue;Caractere(13);" ")
+        Fin de cas 
+        
+        
+        Si ($fieldNumber#$numberOfFields)
+          Si ($Plateforme=Windows )
+            ENVOYER PAQUET($documentReference;Mac vers Windows($fieldValue)+$fieldDelimiter)
+          Sinon 
+            ENVOYER PAQUET($documentReference;$fieldValue+$fieldDelimiter)
+          Fin de si 
+        Sinon 
+          Si ($Plateforme=Windows )
+            ENVOYER PAQUET($documentReference;Mac vers Windows($fieldValue)+$recordDelimiter)
+            
+          Sinon 
+            ENVOYER PAQUET($documentReference;$fieldValue+$recordDelimiter)
+            
+          Fin de si 
+          
+        Fin de si 
+        
+      Fin de boucle 
+      
+      ENREGISTREMENT SUIVANT($tablePtr->)
+    Fin de boucle 
+    
+    FERMER DOCUMENT($documentReference)
+    CHANGER CREATEUR DOCUMENT(Document;"TEXT")
+    
+  Fin de si 
+  
+Fin de boucle 
+
+
+  `Export des relations des formations
+
+$tab:=Caractere(9)
+$fin:=Caractere(10)
+$ret:=Caractere(13)
+
+$tableName:="Formation"
+$doc:=Creer document("C:\export_crem\"+$tableName+".txt";"TEXT")
+Si (OK=1)
+  $texte:="Cote_Phono"+$tab+"Instr_Scientif"+$tab+"Instr_Vernacul"+$tab+"Interprète"+$tab+"Total_Instrum"+$fin
+  ENVOYER PAQUET($doc;Mac vers Windows($texte))
+  TOUT SELECTIONNER([Phono])
+  Boucle ($i;1;Enregistrements trouves([Phono]))
+    $cote:=[Phono]Cote_Phono
+    $cote:=Remplacer chaine($cote;$tab;" ")
+    $cote:=Remplacer chaine($cote;$fin;" ")
+    $cote:=Remplacer chaine($cote;$ret;" ")
+    TOUS LES SOUS ENREGISTREMENTS([Phono]Formation)
+    Boucle ($j;1;Sous enregistrements trouves([Phono]Formation)
+      $instr_scientif:=Remplacer chaine([Phono]Formation'Instr_Scientif;$tab;" ")
+      $instr_scientif:=Remplacer chaine($instr_scientif;$fin;" ")
+      $instr_scientif:=Remplacer chaine($instr_scientif;$ret;" ")
+      $instr_vernacul:=Remplacer chaine([Phono]Formation'Instr_Vernacul;$tab;" ")
+      $instr_vernacul:=Remplacer chaine($instr_vernacul;$fin;" ")
+      $instr_vernacul:=Remplacer chaine($instr_vernacul;$ret;" ")
+      $interprete:=Remplacer chaine([Phono]Formation'Interprète;$tab;" ")
+      $interprete:=Remplacer chaine($interprete;$fin;" ")
+      $interprete:=Remplacer chaine($interprete;$ret;" ")
+      $total:=Remplacer chaine([Phono]Formation'Total_Instrum;$tab;" ")
+      $total:=Remplacer chaine($total;$fin;" ")
+      $total:=Remplacer chaine($total;$ret;" ")
+      $texte:=$cote+$tab+$instr_scientif+$tab+$instr_vernacul+$tab+$interprete+$tab+$total+$fin
+      ENVOYER PAQUET($doc;Mac vers Windows($texte))
+      SOUS ENREGISTREMENT SUIVANT([Phono]Formation)
+    Fin de boucle 
+    LIBERER ENREGISTREMENT([Phono])
+    ENREGISTREMENT SUIVANT([Phono])
+  Fin de boucle 
+  
+  FERMER DOCUMENT($doc)
+  
+Fin de si 
+
+  `Export des relations des mots clés
+
+$tableName:="Fonction_Usage"
+$doc:=Creer document("C:\export_crem\"+$tableName+".txt";"TEXT")
+Si (ok=1)
+  $texte:="Cote_Phono"+$tab+"Mot_Clef"+$fin
+  ENVOYER PAQUET($doc;Mac vers Windows($texte))
+  TOUT SELECTIONNER([Phono])
+  Boucle ($i;1;Enregistrements trouves([Phono]))
+    $cote:=[Phono]Cote_Phono
+    $cote:=Remplacer chaine($cote;$tab;" ")
+    $cote:=Remplacer chaine($cote;$fin;" ")
+    $cote:=Remplacer chaine($cote;$ret;" ")
+    TOUS LES SOUS ENREGISTREMENTS([Phono]Fonction_Usage)
+    Boucle ($j;1;Sous enregistrements trouves([Phono]Fonction_Usage)
+      $mot_clef:=Remplacer chaine([Phono]Fonction_Usage'Mot_Clef;$tab;" ")
+      $mot_clef:=Remplacer chaine($mot_clef;$fin;" ")
+      $mot_clef:=Remplacer chaine($mot_clef;$ret;" ")
+      $texte:=$cote+$tab+$mot_clef+$fin
+      ENVOYER PAQUET($doc;Mac vers Windows($texte))
+      SOUS ENREGISTREMENT SUIVANT([Phono]Fonction_Usage)
+    Fin de boucle 
+    LIBERER ENREGISTREMENT([Phono])
+    ENREGISTREMENT SUIVANT([Phono])
+  Fin de boucle 
+  
+  FERMER DOCUMENT($doc)
+  
+Fin de si 
+
+
+ALERTE("Export terminé.")