
Bienvenue sur InstantObjects, le cadre intégré pour développer des solutions commerciales orientées objet à Delphi (de Delphi 10.1 à la dernière version)

Liens connexes: https://www.embarcadero.com/ - https://learndelphi.org/
InstantObjects est une technologie RAD qui permet la création d'applications basées sur des objets commerciaux persistants. Il simplifie le processus de réalisation des idées en produits; raccourcit le délai de commercialisation et aide à maintenir la concentration sur les entreprises.
Même s'il s'agit toujours d'une technologie boulonnée, InstantObjects s'intègre à l'ide Delphi et à l'objet Pascal d'une manière simple, flexible et intuitive. Il n'y a pas d'environnements sophistiqués qui doivent être compris avant que le développement d'applications puisse commencer.
Offres InstantObjects:
Modèle de réalisation dans le Delphi IDE via des outils bidirectionnels intégrés (de l'éditeur en code)
Persistance des objets dans les bases de données relationnelles les plus courantes ou les fichiers basés sur XML (également avec Firedac Broker)
Présentation des objets via des contrôles standard des données.
Sérialisation / désérialisation de l'objet à l'aide de la bibliothèque de Delphi-Neon
Documentation
Suivez le manuel complet présent dans cette section wiki et regardez la démo Primercross pour savoir comment créer des applications avec une couche de persistance d'objet très flexible.
État du projet
Le projet est toujours géré par Ethea SRL, une entreprise italienne qui utilise InstantObjects for Instantsolution Framework.
Vous pouvez trouver plus d'informations sur ce projet open source dans la section Wiki.
Les fichiers source InstantObjects sont publiés sous la version 2.0 de la licence publique de Mozilla. Vous pouvez obtenir une copie de la licence à
www.mozilla.org/en-us/mp/2.0/
Tests de Dunitx complets
InstantObjects contient plus de 400 tests unitaires écrits pour Dunitx et UBMock Framework.
À partir de la version 3.0, la version est également compatible avec le cadre de test TesInsight.

Notes de libération
Version 4.2 (4.2.0.0) (2024-08-05)
Version 4.1 (4.1.0.0) (2023-10-22)
Version 4.0 (4.0.0.0) (2023-07-20)
Version 3.1 (3.1.0.0) (2023-06-26)
Ajout de la prise en charge de la sérialisation JSON via Delphi-neon, nécessite: github.com/paolo-rossi/delphi-neon)
Ajout des composants de TjonFilesAccessor en ajout
Ajout de TinstantJsonBroker, TinstantSTANTJSONRESOLVER, TINSTANTJSONTRANSLATOR
Version 3.0 (3.0.0.0) (2021-08-27)
Ajout du soutien à Delphi 11 Alexandrie
Cadre de test mis à jour vers Dunitx / TeshiNsight (uniquement pour d10.2, d10.3, d10.4, d11.0)
Version 2.10 (2.10.0.0) (2021-03-29)
Correction d'InstantDBX pour la compilation avec la directive IO_Console
Correction de Firedac Corred pour encryptedpassword
Ajouté onidchanged pour la classe TinstantObject
Ajout d'une propriété d'isolement au courtier Firedac
Version 2.9 (2.9.0.0) (2021-01-24)
Ajout de la bibliothèque de Delphi-Neon pour la sérialisation / désérialisation des objets
Ajout de la prise en charge de la bibliothèque du serveur de MARS REST
Refactorisation Connecteur / courtier Firedac
Police modifiée pour l'éditeur à Segoe UI
Ajout de l'événement OnSignParamValue pour les courtiers
Version 2.8 (2.8.0.0) (2020-08-25)
Ajout de la prise en charge de Delphi 10.4 Sydney
Fixage des insectes mineurs
Police d'éditeur mise à jour
Version 2.7 (2.7.0.0) (2018-12-06)
Ajout de la prise en charge de Delphi 10.3 Rio
Prise en charge de l'ancien Linux / Kylix nettoyé
Version 2.6 (2.6.0.0) (2017-04-04)
Version 2.5 (2.5.0.0) (2016-05-31)
Version 2.4 (2.4.0.0) (2015-09-01)
Version 2.3 (2.3.0.0) (2015-04-08)
Ajout de la prise en charge de Delphi XE8
Ajout de la prise en charge de Delphi Xe7
Version 2.2 (2.2.0.0) (2014-05-12)
Prise en charge complète Unicode: Basé sur UseUnicode Indicateur d'InterConnection: Exposers utilise Twidestringfield ou TwideMofield Mapping String Attributs
Conteneurs virtuels (pour les courtiers SQL): relation maître-détail à l'aide d'un contaier sans stockage
(Lisez VirtualContainers.txt pour plus d'informations)
Courtier ajouté pour Embarcadero Firedac
Ajout de la prise en charge de Delphi XE5 et XE6
UNITSTEST MISE À JOUR pour les exposants et le support Unicode
Version 2.1 (2.1.0.0) (2007-02-26)
Prise en charge de SQL Server 2005; Prise en charge du catalogue pour SQL Server 7; meilleure prise en charge de SQL Server en général.
Support pour Modelmaker 6.20 à 9; Un meilleur support de modèle modèle en général dans objectFoundry.
Prise en charge des types d'attributs InstantDate et instantanés pour les types d'attributs à date uniquement et dans le temps uniquement.
Améliorations instantanées de l'explorateur du modèle:
Instant Model Explorer utilise désormais le nouveau ToolsAPI sur Delphi 7+.
Amélioration de la détection de référence circulaire des objets.
Ajout de la capacité de désactiver la vérification des références circulaires en indéfiniment io_circular_reference_check.
Logging de l'instruction SQL améliorée: enregistre désormais toutes les instructions, y compris les instructions de sélection.
BDE BROKER: Implémentation incomplète fixe d'IdDatatype et IDSize.
ADO Broker: Implémentation incomplète fixe d'IdDatatype et IDSize.
XML Broker: maintenant ne crée un seul fichier pour chaque objet, dans le dossier de la classe concrète.
Courtier XML: support supprimé pour le versioning et le codage "BOT" UTF-8.
Courtier XML: défaillance fixe de la requête de la requête.
Courtier XML restructuré pour une personnalisation plus facile.
Refactorisé instantpersistence.pas dans: instantPersistence.pas - reste la principale unité «interface IO». Interbrokers.pas - contient les courtiers descendants, les classes de connecteurs. InstantMetadata.pas - contient les classes de métadonnées, de schéma, etc. InstantTypes - contient certaines déclarations de type.
UBMock et FPCunit ont intégré à l'arborescence source pour un développement de test plus facile.
Le fichier d'aide a été considérablement amélioré.
Ajout d'un document explicatif pour les mappages d'IO aux mappages de types de données Interbase et Firebird.
Divers corrections et améliorations (voir tracker).
Version 2.0 (2.0.0.0) (2006-08-07)
Version 2.0 RC 1 (1.9.2.1) (2006-05-07)
Le fichier d'aide a été amélioré.
Correction de bogue pour # 1496971 Bogue dans l'index de réglage de l'explorateur de modèle et les propriétés requises.
Correction de bogue pour # 1475841. "Erreur de TinstantContainer.sort si vide".
Correction de bogues pour # 1475982. La reconstruction d'une base de données Firebird crée des PK désactivés.
A changé la visibilité de la propriété d'étan-état.
Correction de bogues pour # 1479652. "Problème avec la démo primecross et Instantreference.reset".
A modifié la méthode TinstantsQlbroker.ACQUIREDATATASET en virtuelle.
Ajout d'une méthode protégée et virtuelle unorecordbuffer à TinstantCustomexPoser pour permettre la personnalisation de sa méthode d'annulation.
Correction de bug pour # 1466586. Erreur mineure dans l'éditeur d'attribut. Forcez la feuille de Tabsheet de définition principale avant d'essayer de concentrer le nom d'attribut ou les contrôles d'édition de taille.
Corrigez le bogue n ° 1467511.
Tests unitaires mis à jour. Ajout de l'unité TestinstantObjectreference.PAS au dossier Tests. Cette nouvelle unité contient des tests pour la classe TinstantObjectreference.
Tests InstantPart et Instantreference mis à jour.
Correction de bogue pour # 1464661. Tinstantreference.assign provoque Av. Vérifiez NIL nécessaire avant d'essayer de cloner un objet d'attribut Tinstantreference.
Version 2.0 Beta 3 (1.9.1.3) (2006-03-31)
L'élément de menu IDE "Build Database ..." a été modifié en "Build InstantObjects Database ...".
Les IDE BDS n'ont pas d'élément de menu principal "base de données", donc l'élément de base de la base de données "& Build InstantObjects ..." est inséré dans l'élément de menu de vue principale sous l'élément "Explorer de données" s'il existe. Sinon, il est annexé.
Correction du bug n ° 1410657, où TinStantsElector.GetSchanged récupère tous les objets non raffinés à la recherche de modifications.
Correction du bug # 1416083 (nom de stockage ignoré pour les attributs de pièce externes).
IBX: transaction interne désormais automatiquement automatiquement. Corrigez le bug 1402383 "Transactions suspendues". AVERTISSEMENT: le bogue n'est pas corrigé si vous utilisez Delphi 5.
Correction du bug 1423157. Parts d'attribut d'insertion provoque une erreur.
Correction du bug 1385748 "Les appels imbriqués pour stocker le débordement de la pile".
Ajout de nouveaux rafraîchissements de propriété publics à l'étin-planté. Il s'agit d'une propriété indexée qui renvoie le TinstantObjectreference à partir de la liste interne, vous permettant d'obtenir une liste d'ID d'objet référencés sans les récupérer.
FR # 1424512 - Ajout de champs pour entrer le nom d'utilisateur, le mot de passe, le rôle de rôle SQL et le nom de jeu de caractères sur le formulaire ConnectionDEF d'IBX. InternalCreateDatabase utilise un jeu de caractères actuel pour créer une base de données physique.
Ajout de champs pour le nom d'utilisateur, le mot de passe, le rôle SQL, le jeu de caractères et le nom de la bibliothèque DB pour UIB Broker. FR # 1424520.
Correction d'une fuite à l'aide d'une instance TinstantObject via le pointeur d'interface. Bogue n ° 1424540.
Primercross: Ajout de la capacité de rafraîchir le contenu de la grille via la touche F5.
Test: modifications mineures de modèle.pas pour permettre les structures de test de référence circulaire requises.
Ajout de procédures de test pour tester les anantantes.pas pour faciliter les tests de fuite de mémoire pour les structures d'objets avec des références circulaires.
Ajout d'une autre procédure de test pour tester les anantantes.pas pour faciliter les tests de fuite de mémoire pour les structures d'objets avec des références circulaires: a -> b -> c -> a | + -> d -> e alors supprimez E.
Test du cas pour démostrater la boucle infinie dans les références freécirculaires.
De nombreux correctifs et améliorations dans les démos et les tests.
Correction d'une fuite à l'aide d'une instance TinstantObject via le pointeur d'interface. Bogue n ° 1424540.
Correction du bug # 1410138 où, dans certaines situations, un sélecteur soulève une exception car le nom du composant de base de données n'a pas été téléchargé à partir de Stream.
Correction de fuites avec des attributs de pièce et de pièces dans l'effort de vérification de référence circulaire.
Les types de colonnes non pris en charge trouvés dans la base de données n'arrêtent plus le processus de construction / évolution.
Corrigez le bogue n ° 1426929. Pour une application compilée dans D2006, l'ajout d'entrées dans un nouvel enregistrement dans un DBGrid avec un sélecteur connecté entraîne un crash d'application (pile surflow) lorsque vous essayez de l'onglet à partir de la deuxième colonne.
Résolution de la fuite de mémoire Instantexplorer (bug n. 1423344).
Correction du bug # 1423177 - Exceptions de gestion de la fuite de mémoire.
Correction du bug 1375131: la base de données en évolution avec les attributs de pièce provoque une erreur "classe non enregistrée" lorsque l'objet est récupéré.
Modification de la façon dont les packages incluent des fichiers de ressources: nous sommes de retour à l'approche standard d'un fichier res par package.
Version surchargée implémentée de TinstantParts.DestroyObject et Tinstantreferences.DestROYObject qui reçoit un paramètre TinstantObject.
Correction d'une déconnexion non inférieure à l'intérieur de la méthode FreeCircularReference.
Correction du courtier et catalogue Zeosdbo:
Correction de AV (Bug # 1434585) et de fuite (Bug # 1434710) à l'intérieur de TinstantNavigationalQuery.
Correction d'une fuite avec quelques types de références circulaires.
Correction du bug n ° 1430106.
Nouveau mécanisme de rappel / retour; Correction des bogues: 1232576 Suppression des sélecteurs sans eoautoApply; 1410736 REVERT La méthode est l'empressement des attributs de références; 1430109 InternalRemoveObject des exposants ne rafraîchit pas la grille; 1430117 ADD / INSERTOBJECT (Exposants) avec un comportement incohérent; 1430119 Record d'insertion de fuite; 1430127 fuite avec interne et déférenter vérifié; 1436858 Exposer.Autodispose disposer objet référencé.
Correction de l'info.Conflict Affectation dans TinstantsQlResolver.Executestatement Méthode.
Correction d'une exception dans D5 et IBX. Méthodes InternalCommit et Internalrollback.
Correction du bug # 1430106 - TinstantBlobAttribute.Assign ne fonctionne pas correctement car LoadDataFromStream ne casse pas de flux.
Correction du bug # 1410143 - Lorsqu'une édition d'une personne avec une image qui vient d'être modifiée est ouverte, Primer soulève une exception avec un message "Format de flux graphique non pris en charge", "Metafile n'est pas valide" ou "Erreur de lecture du flux".
Correction du bug 1437815 - exposer.reMoveObject gâche les données TDATASET.
Correction des exposants de bug n ° 1438840 avec DeferiNsert ne possède pas un objet avant le magasin.
Implémentation du tampon REVERT pour les objets supprimés via la méthode relèveObject.
Implémenté BMP avec la reconnaissance TGraphiCheader (Bug # 1439017).
Correction du bug n ° 1439025 Appliquer / Restorestate décrémentant StateleLevel.
Correction du bug n ° 1436858 Exposer.Autodispose disposer objet référencé.
FR # 1440209 - Passez l'instance de l'objet à ONGENERETERIDID.
Correction du bug n ° 1439851 - champs requis non vérifiés dans les exposants.
Correction du bug # 1439234 - Les paramètres ne fonctionnent pas avec MS Access.
Correction du bug # 1439091 - exposer.addObject Duplication Object (Lists triés).
Implémentation de l'option EonotDisposeReferences de l'exposer.
Correction d'un débordement de pile en raison d'appels récursifs à la fonction IsinsidecircularReference; Améliorations dans la vérification de la référence circulaire.
Mise à jour des tests Suite pour être compatible avec D5. Besoin de fichiers de projet UBMock modifiés pour la compatibilité avec D5 pour compiler et exécuter les tests dans D5.
Correction de l'index des limites de l'erreur dans FreeCircularReference.
Correction des bogues [SF # 1447789] dans Instantrtti.pas liés à la compilation et à la gestion du type booléen dans la fonction d'unité privée AccessProperty.
Correction de bug [SF # 1447794] pour objectFoundry.
Correction d'un bug [1446833] - Les champs de devises reçoivent des valeurs impaises.
Mise à jour du courtier NEXUSDB. Les modifications s'appliquent principalement à la boîte de dialogue Connexion de la version du serveur distant. Les modifications de la version intégrée étaient dues au renom sur les chaînes de ressources et à quelques conseils de bouton de dialogue de connexion supplémentaires. Modifications principales:
Implémentation de la méthode TinstantCustomexPoser.Remove.
L'option implémentée EoAutoreMember.
Correction du bug # 1461222 - "ORA-01722: numéro non valide" avec le courtier DBX.
De nombreuses petites corrections de bugs et améliorations.
Version 2.0 Beta 2 (1.9.1.2) (2006-01)
Correction de AV possible dans TinstantBrokercatalog.
De nombreux correctifs au code de gestion des références circulaires.
Zeosdbo: Ajout de la prise en charge de la création de la base de données IB / FB / MYSQL.
UIB: Correction d'Av qui a été soulevée en essayant de déconnecter l'Uibdatabase pendant qu'il est détruit.
Delphi 2005/6: Ajout de l'entrée InstantObjects pour les écrans de démarrage de démarrage à l'aide de l'icône de sphère gérée.
ModelMaker: Ajout d'une ressource de version à afficher dans la boîte de dialogue Tools / Expert Manager de ModelMaker.
Correction du bug # 1403489. Correction du problème que dans certaines situations, où il n'y a pas de références circulaires, un objet est mal détaché à partir d'un attribut de références.
Corrigez pour EoleException dans ModelMaker lors de l'annulation de la boîte de dialogue lors de l'ajout d'un nouvel ioatTribut.
Divers refactorisations et optimisations internes.
Élimination de plusieurs fuites de mémoire et sources d'AV.
Version 2.0 Beta 1 (1.9.1.1) (2005-11)
Ajout du support pour Delphi 2006 / Win32 (expérimental).
Aidez le fichier mis à jour (travail en cours).
Ajout de nouveaux BPG pour une installation plus facile (travail en cours).
Ajout de la prise en charge de l'UIB dans Delphi 2005.
Ajout de MSSQLCATALOG dans Delphi 2005.
Correction de la boucle infinie lors de l'arrêt de l'application avec TinstantDBBuilder.
Correction de la compatibilité avec Delphi 5 Professional.
Plusieurs autres corrections de bogues et de petites améliorations.
Une suite croissante de tests unitaires. Maintenant plus de 300. (Voir le dossier Tests).
Correction d'un bogue, ce qui entraînerait une fuite de mémoire si la méthode publique d'étouffeuse de l'étape.
Applications de démonstration d'amorce mise à jour pour réduire la fuite de la mémoire des objets.
Ajout de références par comptage et traitement pour résoudre les fuites de mémoire causées par la sémantique de comptage de référence des objets InstantObjects dans les références circulaires.
Ajout de la fonctionnalité améliorée de Remember / Retour pour TinstantCustomexPoser. Inclut également la fonctionnalité Remember / Revert pour les attributs de MEMO IO (suppose que les données de texte uniquement).
Ajout de Zeosdbo (projet Zeoslib, voir courtier http://zeosforum.net.ms/).
Modifications pour Kylix 3: supprimé la prise en charge des EMF sous Linux et les catalogues ajoutés. Supprimé des fichiers inutiles pour Primerk3.
Le nom de stockage d'un attribut de références est maintenant stocké en métadonnées, donc lorsque vous rouvrez l'éditeur de classe, vous n'avez pas perdu ces informations.
InternalRefreshObjects pour TinstantNavigationalQuery et TinStantsQlQuery utilise désormais une liste BusyObjects avec la référence de propriété ajoutée à InstantObjects. Cela garantit que les objets instantanés de la liste ne sont pas détruits prématurément provoquant des AV.
Le comportement de propriété des objets de TinstantNavigationalResolver a été conçu avec Tinstantsqlresolver. L'ajout ou l'insertion d'objets à un SELECTEUR INSTANTS se comporte désormais de manière cohérente pour les courtiers de navigation et basés sur SQL.
Correction du bug dans TinStantsQlResolver.Exécution de la question qui indique uniquement les informations.
Correction d'un bug dans TinstantNavigationalQuery.SetRownumber afin que l'itération de la boucle n'essaie pas de dépasser le jeu de données.eof.
TinstantQuery.getConnector utilise désormais la fonction globale InstantCheckConnector qui essaiera d'attribuer le Connector defaultConnect si l'on n'a pas déjà été affecté.
Les parties intégrées et externes se comportent désormais de la même manière par rapport à leurs InstantObjects contenus (c.-à-d. Refruts et propriété).
Fonction d'amélioration de TinstantCodeAtTribute.getsingularName.
TinstantObject.Restorestate vérifie désormais que l'objet se trouve dans le cache ObjectStore avant d'essayer de le supprimer.
REPLIRÉ Méthode TinstantNavigationalQuery.Translatecommand (code dupliqué).
Utilisez maintenant Old DB Builder pour les courtiers sans catalogue, et un nouveau pour les autres.
Les événements de connexion ne fonctionnent pas lorsque la base de données n'est pas connectée via TinstantConnector Devenant. Ils ont été supprimés.
Corrigez le bogue n ° 1285523: les parties des pièces sont perdues lors de la mise à jour de mise en œuvre. Lorsque le modèle inclut un schéma de pièces de pièces, parfois lorsque le stockage de premier niveau partie, les parties du deuxième niveau sont perdues dans la base de données.
Autorisez les catalogues qui ne soutiennent pas la lecture de toutes les métadonnées (comme un catalogue XML).
Version 2.0 Alpha 1 (1.9.0.1) (2005-07)
Ajout de l'UIB (Unified Interbase, voir http://www.progdigy.com/modules.php?name=UIB) courtier.
Ajout du soutien à Delphi 2005 (D9), personnalité Win32 uniquement. Brokers Soutenir: ADO, BDE, DBX, IBX, NEXUSDBSQL, XML.
Support UsePreparedQuery supprimé; Passez à la nouvelle instructionCache.
Nouveau événement TinstantConnector.Euneterateid, utilisé pour fournir une stratégie de génération d'identité personnalisée. Utilisez-le avec idDatatype / idSize.
IdDatatype et idSize: voir iddatatype_and_iddatasize.txt.
De nombreux correctifs et improvalent à la nouvelle stratégie de cartographie de stockage externe.
StatementCache: Voir Statement_Cache.txt.
Nouveaux tests de performances (récupérer et instruction cache) dans Primer.
Une suite croissante de tests unitaires (voir le dossier des tests).
TinstantPump: voir instantpump.txt.
Évolution de la structure de la base de données: voir [RFC] _io-001_database_structure_evolution.txt jusqu'à ce que des documents plus complets soient disponibles.
De nombreux correctifs de bogues et petites améliorations. Veuillez consulter nos trackers:
http://sourceforge.net/tracker/?group_id=94747&atid=608935 http://sourceforge.net/tracker/?group_id=94747&atid=608938
Version 1.6.7 (2004-11-17) Official
Ajout de la prise en charge du mot-clé iometadata dans la définition de la classe de métadonnées et la mise à niveau de ObjectFoundry pour le support ModelMaker 7 et 8. Veuillez vous référer à iometadata_keyword.txt pour plus de détails.
ExternalPart, ExternalParts et ExternalReferences Support.
Ajout du courtier instantanée
Modifications au courtier IBX:
Prise en charge de LoginProrompt et événement Onlogin dans les connexions basées sur TCustomConnection
Version 1.6.6 (2004-07-29) non officiel
Support des devises: consultez la démo d'amorce pour une petite explication.
Support graphique: examinez la démo d'amorce pour une petite explication.
Primercross a été réprimandé pour la monnaie et le support graphique
ConnectionManager change:
Prise en charge usePreparedQuery: Ajout de la prise en charge usePreparedQuery pour TinStantsQlbroker (plus de détails dans prepared_query_support.txt).
Demo d'amorce: le formulaire PerformanceView a changé pour effectuer des tests avec useParedQuery et d'autres options
Ajout de la prise en charge du streaming XML dans les champs blob (pièce, pièces, références) (plus de détails dans XML_BLOB_STRIMING_RELEASE_NOTES.txt)
Ajout de l'événement OnAddClassFieldDef et de la méthode Breakthorough pour accélérer la création de FIEDS d'Exposer.
La méthode d'annulation de l'exposer est désormais virtuelle et undobuffer est disponible.
Version 1.6.5 (2004-05-23) non officiel
Portage de Kylix (Cortre de conception, noyau et DBExpress). Plus de détails dans kylix3_portsting_release_notes.txt.
Portage Kylix de la démo d'amorce.
Format XML pour le fichier de connexion géré par ConnectionManager.
Version 1.6 (2003-12-19) Dernière version commerciale
Architecture de courtier basée sur SQL introduite.
DBExpress courtier ajouté. (Interbase, MSSQL, DB2, Oracle, MySQL)
Courtier IBX maintenant basé sur SQL.
Courtier ADO / MSSQL maintenant basé sur SQL.
La mise en cache d'objet s'est améliorée.
ObjectFoundry: Ajout d'attribut est une conscience.
ObjectFoundry: Ajout d'attribut defaultValue Awareness.
ObjectFoundry: Correction d'un bug lors de l'application d'options et de méthodes d'attribut.
TinstantArLelatyQuery.recnoofObject renvoie désormais le numéro d'enregistrement correct lorsqu'il est séquencé.
TinstantObject.AttributeAddress maintenant protégé et virtuel.
Ajout de mots clés «intégrés» à des classes non strées sans attributs pour améliorer le support ModelMaker.
Instantrtti.AccessProperty; Correction de l'erreur de «type non valide» sur les propriétés booléennes.
TinstantCustomexPoser.LoadFieldValue; Correction d'un bug qui entraîne la copiation des chaînes au-delà de la taille du tampon.
TinstantCustomexPoser: FieldDefs est désormais créé à partir de champs pour améliorer les performances lors de l'utilisation de champs persistants.
Version 1.5 (2003-02-25)
Ajout d'iProvidersupport à TinstantexPoser et TinStantsElector.
Ajout de paramètres à TinStantsElector et à tous les courtiers.
Tinstantiql; Ajout de la prise en charge des paramètres dans; ": [Paramname]" Format.
Ajout d'Eosyncedit à TinStantexposeroptions pour permettre un rafraîchissement du tampon de modification actuel en mode modification et changements d'objet ailleurs.
Ajout de prévisions de renseignement à TinstantFieldoptions pour contrôler la création récursive de champs d'ensemble de données imbriquées.
Ajout de l'option «requise» aux attributs.
Ajout de tinstantAttribute.isquevired.
Ajout de TinstantAttribute.ismandatoire.
TinstantObject; Savestate, ApplyState et Restorestate sont désormais virtuels.
TinstanTindexmetadata.options est passée en Tindexoptions pour prendre en charge des options supplémentaires.
Ajout de TinstantObjectNotifiers.AcceptItem.
Ajout d'étancheur d'étanTRALATIONQUEUR.CRÉATETRANSLATEUR.
Ajout de TinstantCustomexPoser.releaseObject.
Ajout de tinstantLelatyQuery.recnoofObject pour prendre en charge les ensembles de données non séquencés dans GotoObject / InternalIndexoBObject.
Ajout de TinstantCustomexPoser.RefreshCurrentObject.
Ajout de méthodes convertotext et converttobinary pour permettre le streaming XML.
Streaming modifié pour permettre le streaming XML d'objets étrangers.
XML-Processor accepte désormais Blanks dans Stream.
Le modèle peut désormais être exporté vers XML via le modèle Explorer.
Correction du problème lors du chargement des métadatas de la classe à partir de la ressource DLL.
TinstantCustomexPoseer: corrige de bogue provoquant des métadonnées des attributs héréditaires à ignorer pendant la génération de champs.
InstantCustomexPoser.gotoObject déplace désormais le curseur vers l'objet spécifié s'il existe, qu'il ait été chargé ou non.
TinstantCustomexPoser.gotoObject: Correction d'un bug empêchant l'objet de trouver l'objet lorsqu'il est appelé immédiatement après l'ouverture de l'ensemble de données.
TinstantCustomexPoser.ApplyChanges appelle désormais les post-changes d'abord à commettre des modifications en attente.
TinStantselector.refreshdata rafraîchit désormais les objets du stockage.
Correction des bogues dans TinstantBlob, ce qui entraîne une répétition ou un tronqué du contenu.
TinstantAllationalTranslator.embracestring utilise désormais le file de main-d'œuvre et ledimiter droit.
Correction du problème d'actualisation dans les exposants au moment de la conception lors du changement de modèle via le code.
Correction de divers problèmes avec TinStantexPoser lorsqu'il est utilisé avec DataSnap.
Ajout de la prise en charge de Varolestr, Varnull et VEREMPTY à InstantCompareValues.
Broker d'étanTanTRALATION; Correction d'un bug qui oblige les objets à ne pas être actualisés si les mises à jour ont été effectuées par une autre session.
TinStantsElector; Correction de l'erreur AV qui s'est produite lorsque le sélecteur est le chargement et que son connecteur associé n'est pas encore chargé.
TinstantBlobStream.Create; N'échoue plus si l'attribut ne peut être trouvé.
InstantFindAttribute; Tentative fixe de traverser une propriété d'objet non attribuée.
Ajout des publicités, des courtiers DBISAM et FF à la version Delphi 7.
Version 1.3 (2002-09-12)
FlashFiler courtier ajouté.
DBISAM 3.16 pris en charge.
TinstantConnector.Objects Array ajouté.
TinstantConnector.GenERateId ajouté.
TinstantibxBroker: Correction de l'erreur de nom d'index en double.
TinstantAttribute: GetValue / setValue est maintenant virtuel.
Version 1.22 (2002-07-30) - Delphi 7 Companion CD
Delphi 7 soutenu.
TinStantexPoser: Lors de l'exposition des instances de tcollection, les éléments sont maintenant créés avec tcollectionItem.Create pour assurer une initialisation appropriée.
TinstantCustomexPoseer: violation d'accès fixe lors de la suppression d'objets qui ne sont pas des instances de TinstantObject.
Package d'exécution: Correction du modèle d'empilement de bugs d'être chargé.
Broker ADO: Ajout de la sensibilisation à DB2.
TinstantDateTime: «le temps» peut désormais être utilisé comme valeur par défaut pour l'heure actuelle.
TinstantDateTime: Correction de l'erreur de convertir lors de la définition de la valeur par défaut.
TinstantObject: Lorsque l'objet rafraîchissant qui a été éliminé par une autre session, l'objet est maintenant marqué comme non persistant et tous les attributs sont réinitialisés.
TinstantCustomexPoser: Ajout de la suppression de relève et deleteObject.
TinstantObject: Ajout d'isoperationallowed et de vérification de la vérification.
Demo d'amorce: import / exportation de plusieurs objets ajoutés.
Version 1.21 (2002-06-28)
InterSantGetClass: Renvoie maintenant NIL au lieu de lever des exceptions si la classe n'est pas un descendant de TinstantObject.
Ajout desclasses InterSantGet pour permettre l'énumération des classes.
Metadata: 'Date' est désormais reconnu comme valeur par défaut pour les attributs DateTime.
Correction d'un bug qui provoque le modèle d'exécution hors synchronisation lors de la suppression ou de l'ajout d'unités de modèle sans modifier le code.
Exposant / sélecteur: Correction d'un bug qui entraîne des données dans le tampon d'enregistrement lors de l'ajout d'une nouvelle ligne à un ensemble de données vide et de l'annulation.
Exposant / sélecteur: Ajout d'une propriété Options. La propriété a automatiquement changé en option eoautoApply.
Exposant / sélecteur: Ajout de l'option EodeferiNsert pour contrôler si les objets sont insérés immédiatement lors de l'insertion / appuyer sur de nouvelles lignes ou lors de la publication de la ligne.
Exposant / sélecteur: le curseur ne passe plus à la première ligne lors de l'annulation de l'insert et du tri est vrai.
Courtier BDE: Correction d'un bug dans la traduction SQL pour MS SQL Server via ODBC
BDE BROKER: Correction d'un bug dans la traduction SQL pour DB2 (ODBC et lien SQL)
Courtier DBISAM: Correction d'un bogue provoquant des bases de données distantes traitées comme locales.
Expert objectFoundry: un problème résolu avec les classes qui ne descendent pas de TinstantObject en étant importée comme intégrée
Expert objectFoundry: Erreur fixe "trop d'arguments dans les métadonnées" pour les longues sections de métadonnées.
Version 1.2 (2002-05-16)
ObjectFoundry activé.
Courtier DBISAM compilé avec DBISAM 3.10.
Le modèle Explorer montre désormais des relations de classes non strées en relation.
Correction d'une erreur, ce qui fait que les attributs Memo deviennent des attributs de chaîne lorsqu'ils sont définis via l'éditeur d'attribut.
Ajouté virtuel à tinstantObject.gereateid pour générer des ID personnalisés.
Ajout de TinstantObject.undanged pour permettre d'ignorer les modifications.
Ajout de tinstantreference.destroyObject et d'instantreferences.destroyObject pour libérer l'objet sans compenser la référence.
Ajout de TinstantObject.OwnerChanged pour notifier lorsque le propriétaire change.
Correction d'une erreur lors de la lecture des valeurs vides du fichier XML.
Correction d'un bug de position de flux lors de la diffusion de plusieurs objets à partir du fichier XML.
Correction d'un bug, ce qui entraîne des objets de Stream à être stockés en partie.
Ajout d'instantReadObjects et InstantWriteObjects pour lire et écrire plusieurs objets à partir d'un flux.
BuildDatabase avec IBX Broker échoue désormais sur les champs de chaîne sans taille.
Version 1.11 (2002-04-22)
Correction d'un bug dans l'exposant causant des problèmes avec les champs de recherche.
Correction d'un bug dans TinstantObject, ce qui fait que l'ispersistent est vrai après la disposition.
Correction d'un bug dans l'exposant, ce qui fait que CurrentObject renvoie un mauvais objet lorsqu'il est utilisé avec DeveXpress QuantumGrid en mode grille standard.
Ajout de TinstantConnector.USETRANSACTIONS pour permettre la désactivation des transactions.
Ajout de TinstantObjectNotifier.ObjectClass pour permettre le filtrage des notifications.
Eabort n'est plus enveloppé dans Einstantterror.
Correction d'un bug dans TinstantObject.refresh provoquant des valeurs de blanc occasionnelles.
Correction d'un bug dans DBISAM Broker provoquant une exception "Le nom de la base de données existe déjà".
Connector-BasedCondection de TinstantConnection introduit et utilisé dans les courtiers BDE, ADO et IBX. LeConnection d'étanTRALATION ne nécessite plus de TCustomConnection.
Tinstantwriter.writeString ajouté pour assurer la compatibilité des flux entre Delphi 5 et Delphi 6.
Ajout de TinstantConnector.BuildDatabase qui permet de construire des tables pour des classes spécifiées uniquement.
Version 1.1.0.1707 (2002-03-15)
Dbisam Broker a ajouté.
Advantage Broker du serveur de base de données ajouté.
TinstantContainer.onContentChanged remplacé par onBefoContentChange et onaftercontentchange.
La propriété Isdefault pour TinstantConnector a changé pour permettre aux connecteurs par défaut de projection croisée d'exister dans le même groupe de projet.
Les champs pour les propriétés d'objets non d'attributs sont désormais inclus dans les exposants et les sélecteurs à DesignTime.
Correction d'une fuite de mémoire lors de l'annulation des opérations d'insertion dans des sélecteurs.
IBX Resolver convertit désormais les booléens vers et depuis les petits.
Les propriétés de l'énumération sont désormais gérées correctement sur DesignTime.
Les exposants n'éliment plus de nouveaux objets après leur construction.
Correction d'un bug, ce qui fait disparaître le bouton Connect / déconnecter du gestionnaire de connexion après la connexion.
Correction d'un bug dans un connecteur d'étanTantreLational provoquant une erreur "connexion non assistée" lors du chargement des composants de sélecteur associés aux connecteurs sans connexions.
Correction d'un blocage des bogues Supprimer les opérations sur les exposants lors de l'exposition des instances de classes qui ne descendent pas de TinstantObject.
Version 1.0.0.1706 (2002-02-14)
ADO, BDE and IBX brokers are now placed in individual packages. The complete source code for the brokers is installed into SourceBrokers along with a template broker package for creating custom brokers. The separate Broker Kit is no longer required.
The design-time database creation is now based on the Connection Manager. This allows you to define multiple connections for a project at design-time and (re)build each database from the IDE. Database creation can also be done for custom brokers at design-time when they have been installed into the IDE.
Database creation now creates fields from attribute storage names instead of attribute names.
Fixed bug causing AV when attempting to store an object via a connector with no connection.
Fixed bug causing AV when loading form with TInstantSelector that is linked to a TInstantIBXConnector with no connection.
Version 1.0.0.1705 (2002-02-07)
InterBase dialect 3 is now supported.
Memos and Blobs larger than 255 bytes are now exposed correctly.
Picture attribute added to TPerson in Primer to demonstrate blob capabilities.
Parser error: "expected parameter" when using custom storage names for container attributes fixed.
Object changes made during store when an exposer is auto-applying are now reflected in the exposer.
Length of inherited string attributes is now correct when exposing objects of descendant classes.
Fixed design time Access Violation when removing connection component that is attached to a connector.
Visibility scope of some exposer/accessor methods have changed.
About box added to Model Explorer.
Version 1.0.0.1704 (2002-01-23)
Exposer now refreshes record buffer when exposed objects are refreshed.
Fixed bug in TInstantSelector causing use of ancestor table name instead of own table name when specifying attributes introduced in ancestor that is not stored.
Fixed bug in TInstantObject.Retrieve causing stack problems when returning nil.
Version 1.0.0.1703 (2002-01-03)
Fixed bug causing exposer/selector fields to be missing at design time.
Removed brackets from SQL when using MS SQL Server via ADO.
Fixed bug in InstantObjectBinaryToText when converting boolean values.
Version 1.0.0.1702 (2001-12-23)
Fixed infinite loop when compiling immediately after changing model unit of large model on slow computers.
Fixed error "'0.0' is not a valid timestamp" when posting blank dates to exposers in Delphi 6.
Version 1.0.0.1701 (2001-12-07)
Version 1.0.0.1659 (2001-12-03)
Contributors are welcome
All InstantObjects users are invited to join us in this project.