Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20.6
Compiler projet
|
Compiler projet {( {projectFile}{;}{options} )} -> Résultat | ||||||||
Paramètre | Type | Description | ||||||
projectFile | 4D.File |
![]() |
Fichier .4DProject à compiler | |||||
options | Objet |
![]() |
Objet indiquant les options de compilation | |||||
Résultat | Objet |
![]() |
Objet contenant des informations sur le statut de la compilation | |||||
Compiler projet vous permet de compiler le projet hôte courant ou le projet spécifié dans le paramètre projectFile. Pour plus d'informations sur la compilation, consultez la page de compilation sur developer.4d.com.
Par défaut, la commande utilise les options du compilateur définies dans les Paramètres de structure. Vous pouvez les remplacer en passant un paramètre options. Les syntaxes suivantes sont prises en charge :
Note : Les bases de données binaires ne peuvent pas être compilées avec cette commande.
Contrairement à la fenêtre du Compilateur, cette commande nécessite que vous désigniez explicitement le ou les composants à compiler. Lors de la compilation d'un projet avec Compiler projet, vous devez déclarer ses composants à l'aide de la propriété components du paramètre options. A noter que les composants doivent déjà être compilés (les composants binaires sont pris en charge).
Le code compilé résultant sera stocké dans le dossier DerivedData ou Libraries du projet, en fonction de la propriété targets du paramètre options. Si vous souhaitez créer des fichiers .4dz, vous devez toujours compresser manuellement le projet compilé ou utiliser la fonctionnalité Générer l'application.
Si vous passez une collection vide dans les targets, Compiler projet exécutera une vérification de syntaxe sans compiler.
Les erreurs de compilation, le cas échéant, sont retournées sous forme d'objets dans la collection errors.
Note : Vous ne pouvez pas appeler cette commande lorsqu'une autre compilation est en cours d'exécution (par exemple, une compilation lancée à partir de la fenêtre Compilation).
Le paramètre options est un objet. Voici les options de compilation disponibles :
Propriété | Type | Description |
components | Collection | Collection d'objets 4D.File vers des composants dépendants (doit être déjà compilé) |
defaultTypeForButtons | Entier | Valeur possible : Is real ou Is longint |
defaultTypeForNumerics | Entier | Valeur possible : Is real ou Is longint |
generateSymbols | Booléen | Vrai pour générer des informations de symbole dans l'objet retourné .symbol |
generateSyntaxFile | Booléen | Vrai pour générer un fichier de syntaxe pour la complétion de code dans le dossier \Resources\en.lproj du projet. |
generateTypingMethods | Chaîne | "reset" ou "append" pour générer des méthodes de typage. Si la valeur est "append", les déclarations de variables existantes ne seront pas modifiées (comportement de la fenêtre du compilateur) |
plugins | Objet 4D.Folder | Dossier Plug-ins à utiliser en lieu et place du Dossier Plugins du projet courant. Cette propriété est disponible uniquement avec la syntaxe utilisant projectFile. |
targets | collection de chaînes | Valeurs possibles : "x86_64_generic", "arm64_macOS_lib". Passez une collection vide pour exécuter une vérification de syntaxe uniquement |
typeInference | Chaîne | "all": saisissez toutes les variables, "locals": le process et l'interprocess sont saisis, "aucun": toutes les variables sont saisies |
defaultTypeForNumerics | Entier | Valeur possible : Is real ou Is longint |
L'objet retourné par Compiler projet possède jusqu'à trois propriétés :
Propriété | Type | Description | ||
success | Booléen | Vrai si l'action de sauvegarde est réussie, Faux dans le cas contraire. | ||
Disponible uniquement en cas d'erreur ou d'avertissement : | ||||
errors | Collection d'objets | collection d'objets décrivant les erreurs de compilation ou les avertissements | ||
isError | Booléen | Erreur sir Vrai, sinon, avertissement | ||
message | Chaîne | Message d'erreur | ||
code | Objet | Objet code | ||
line | Numérique | Numéro de ligne de l'erreur dans le code. Pour des méthodes de classe, le numéro de ligne dans la fonction | ||
lineInFile | Numérique | Numéro de ligne dans le fichier (différent de la"ligne" des méthodes de classe, et prend en charge la ligne de préfixe %attributes) | ||
Disponible uniquement si l'option generateSymbols est définie sur Vrai : | ||||
symbol | Objet | |||
interprocessVariables | Objet | Liste de toutes les variables interprocess | ||
variables | Collection | Collection de Objets variable | ||
size | Numérique | |||
processVariables | Objet | Liste de toutes les variables process | ||
variables | Collection | Collection de Objets variable | ||
size | Numérique | |||
localVariables | Collection d'objets | Liste de variables locales par méthode | ||
code | Objet | Objet code | ||
variables | Collection | Collection de Objets variable | ||
methods | Collection d'objets | List of methods | ||
code | Objet | Objet code | ||
callCount | Numérique | Nombre d'appels de cette méthode | ||
params | Collection | Collection de types de paramètre (codes numériques du type de valeur) | ||
threadSafe | Booléen | Indique si la méthode est thread safe |
Pour plus d'informations, reportez-vous aux Outils de compilation.
interprocessVariables.variables et processVariables.variables contiennent des objets avec la structure suivante :
Propriété | Type | Description |
name | Chaîne | Nom de la variable |
type | numérique | Type de la variable (tel que la commande Value type) |
arrayDimension | numérique | Pour les tableaux uniquement : 1 pour les tableaux mono-dimension, 2 pour les tableaux à deux dimensions |
code | Objet | Pour les variables process et interprocess : descripteur de l'emplacement de définition de la variable |
La propriété code dans methods[ ].code et errors[ ].code est un objet dont les propriétés sont les suivantes :
Propriété | Type | Description |
type | Chaîne |
|
path | Chaîne | Chemin de méthode (format identique à celui de METHODE OUVRIR CHEMIN) |
file | 4D.File | Fichier méthode |
Retournée selon la valeur de propriété du type : | ||
methodName | Chaîne | Méthode projet |
table | Numérique | Numéro de table (retourné pour un trigger, une méthode formulaire de table ou une méthode objet formulaire) |
formName | Chaîne | Nom de formulaire (retourné pour une méthode formulaire) |
objectName | Chaîne | Nom de l'objet formulaire (retourné pour une méthode formulaire) |
className | Chaîne | Nom de classe |
functionName | Chaîne | Nom de fonction de classe |
databaseMethod | Numérique | Index de la méthode base |
To perform a syntax check only, pass an empty collection to the targets parameter:
var $options;$status : Object
$options:=New object
$options.targets:=New collection //Empty collection for syntax checking
$status:=Compile project($options)
Compile the current project using the compiler options of the Structure Settings only:
var $status : Object
$status:=Compile project
On a Silicon Mac, compile the current project to ARM only:
var $options;$status : Object
$options:=New object
$options.targets:=New collection("arm64_macOS_lib")
$status:=Compile project($options)
Compile a project other than the current project:
var $status : Object
var $projectFile: 4D.File
$projectFile:=Folder(fk documents folder).file("Databases/myApp/Project/myApp.4DProject")
$status:=Compile project($projectFile)
Compile a project and declare its component:
var $options;$status : Object
var $component : 4D.File
$options:=New object
$component:=Folder(fk documents folder).file("Components/myComponent.4dz")
$options.components:=New collection($component)
$status:=Compile project($options)
Produit : 4D
Thème : Compilateur
Numéro :
1760
Nom intl. : Compile project
Créé : 4D v19
Modifié : 4D v19 R5
Modifié : 4D v20.1
4D - Langage ( 4D v20.1)
4D - Langage ( 4D v20.2)
4D - Langage ( 4D v20.3)
4D - Langage ( 4D v20.4)
4D - Langage ( 4D v20.5)
4D - Langage ( 4D v20.6)
Parent de : Compiler projet ( 4D v20)