Anda di halaman 1dari 140

Ligne 100 pour SQL Serveur

Version 11.00

SQL

COMPOSITION DU PROGICIEL

Votre progiciel est compos d'un botier de rangement comprenant : le CD-ROM sur lequel est enregistr le programme, la documentation correspondante
PROPRIETE & USAGE

Tout usage, reprsentation ou reproduction intgral ou partiel, fait sans le consentement de Sage France est illicite (Loi du 11 Mars 1957 - Loi du 3 Juillet 1985). Ils constitueraient une contrefaon sanctionne par les articles 425 et suivants du Code Pnal. Tous droits rservs dans tous pays. Logiciel original dvelopp par Sage France. Documentation Sage France. Toute utilisation, quelque titre que ce soit, non autorise dans le cadre de la convention de licence, est strictement interdite sous peine de sanctions pnales (Loi du 3 Juillet 1985, Art. 46).
CONFORMITE & MISE EN GARDE

Compte tenu des contraintes inhrentes la prsentation sous forme papier, les spcifications vises dans la prsente documentation constituent une illustration aussi proche que possible des spcifications. Il appartient au client, paralllement la documentation, de mettre en uvre le progiciel pour permettre de mesurer exactement l'adquation de ses besoins aux fonctionnalits. Il est important, pour une utilisation sre et oprationnelle du progiciel, de lire pralablement la documentation.
EVOLUTION

La documentation correspond la version rfrence. Entre deux versions, des mises jour du logiciel peuvent tre opres sans modification de la documentation. Toutefois, un additif peut tre joint la documentation existante pour prsenter les modifications et amliorations apportes ces mises jour.
LA FICHE SUGGESTION

Sage France recherche une constante amlioration du progiciel et de sa documentation. Nous invitons notre clientle nous faire parvenir ses suggestions et les ventuels dfauts ou erreurs qu'elle pourrait relever sur la fiche suggestion figurant en dernire page du manuel.
MARQUES

Ligne 30 est une marque dpose appartenant Sage France. Ligne 100 est une marque dpose appartenant Sage France. Ligne 500 est une marque dpose appartenant Sage France. Windows 2000, Windows 98, Windows 95, Windows XP, Windows, MS-DOS sont des marques dposes de Microsoft Corporation. Macintosh, MAC/OS est une marque dpose de Apple Computer Inc. Sage France

Sommaire Poste Serveur........................................ 15 Configuration ........................................................15 Matriel.................................................................15 Elments installs ................................................16 Poste Client........................................... 17 Partie Client ..........................................................17 Applications Ligne 100 sous SQL Server.............17 Manuels lectroniques .........................................18 Installation _____________________________ 19 Installation du poste Serveur ............... 21 Assistant dinstallation ..........................................21 Cration des bases BIJOU et C_MODEL ............22 Installation du poste client................... 24 Installation de la Partie Client...............................24 Installation des applications 100 ..........................29

Sommaire

Gnralits ______________________ 1
Gnralits______________________________ 3 Compatibilit avec les applications Sage Ligne 100........................................ 3 Architecture des versions SQL ............... 4 Particularits de Microsoft Windows, Windows NT/2000 et Microsoft SQL Server 2000 ............................................. 4 Particularits des applications Ligne 100 pour SQL Server ............................... 4 Nouveauts fonctionnelles Ligne 100 version 11.00 .................................... 5 Optimisation SQL................................................... 5 Impression des tats.............................................. 5 Gestion Commerciale et Saisie de Caisse Dcentralise 100 ....................... 9 Stockage des montants HT et TTC ....................... 9

Connexion et erreurs frquentes ______________________ 31


Connexion ______________________________ 33 Connexion un domaine Windows NT/Windows 2000.................................. 34 Postes Clients Windows 95, 98 et Millennium .....34 Postes Clients Windows NT .................................35 Cration dutilisateurs sous Microsoft SQL Server 2000 ................... 36 Erreurs les plus frquentes et solutions................................................ 39 Echec de connexion la base de donnes .........39 Erreur 6706.........................................................40 I
Sage France

Installation______________________ 11
Pr requis obligatoires_________________ 13 Installation des applications ................ 14 Recommandations pour linstallation................... 14 Configuration et lments installs ___ 15

Sommaire Erreur 5 ................................................................ 41 Conversion........................................................... 56 Conversion base propritaire V10.XX et infrieure........................................... 59 Conversion dune base propritaire V11.XX en SQL 100 V11 .................................................. 60 Temps de conversion indicatifs ........................... 63 Rorganisation de la base relationnelle .......................................... 64

Cration des bases Ligne 100 SQL sous Microsoft SQL Server 2000 _____________________ 43
Cration des bases Ligne 100 SQL sous Microsoft SQL Server 2000 ______ 45 Cration de bases au moyen des applications Ligne 100 pour SQL Server ....................................................45 Fichier INI sur le poste client ............................... 47 Base SQL............................................................. 47 Plusieurs bases Sage dans la mme base SQL...................................................................... 48

Tables et procdures systme Sage_____________________________ 65


Base de donnes Master....................... 69 Procdures stockes tendues ........................... 69 Messages derreurs ............................................. 69 Bases Sage 100 ..................................... 70 Structure des tables systmes Sage .... 72 Description de la table cbMessage ..................... 72 Description de la table cbNotification .................. 73 Description de la table cbRegFile........................ 74 Description de la table cbRegMessage............... 74 Description de la table cbRegUser ...................... 75 Description de la table cbSysTable ..................... 75 Description de la table cbUserSession................ 75 Description de la table cbSysLibre ...................... 76 Description de la table cbSysLink ....................... 76 Procdures stockes ............................ 77 CB_Connect ........................................................ 77 CB_Disconnect.................................................... 77 CB_IsFileLock ..................................................... 77 CB_IsRecordLock................................................ 78 CB_IsVracLock .................................................... 78

Outil de maintenance et Conversion ______________________ 49


Outil de maintenance __________________ 51 Conversion des bases _________________ 51 Recommandations.................................51 Dfinition du modle de rcupration des donnes ............................................................... 52 Vrification de lespace disque disponible........... 53 Temps de conversion dune base commerciale......................................................... 53 Oprations raliser aprs conversions ............. 53 Conversion des bases SQL 100 V10.XX et infrieures ............................54 Principe ................................................................ 54 Conseils pour les dveloppements externes....... 55 II
Sage France

Sommaire CB_LockFile ........................................................ 79 CB_LockRecord................................................... 79 CB_LockVrac....................................................... 80 CB_Notify............................................................. 80 CB_PurgeLock..................................................... 80 CB_PurgeMessage.............................................. 80 CB_PurgeNotification .......................................... 81 CB_PurgeRegFile................................................ 81 CB_PurgeRegMessage ....................................... 81 CB_PurgeRegUser .............................................. 81 CB_PurgeUserSession........................................ 82 CB_RegisterFile................................................... 82 CB_RegisterMessage.......................................... 82 CB_RegisterUser................................................. 82 CB_SendMessage............................................... 83 CB_UnLockFile.................................................... 83 CB_UnLockRecord .............................................. 83 CB_UnLockVrac .................................................. 84 CB_UnRegisterFile .............................................. 84 CB_UnRegisterMessage ..................................... 84 CB_UnRegisterUser ............................................ 84 Principes gnraux de notification ____ 93 Exemple dutilisation des notifications .......................................... 94 Envoi de message................................................94 Modification de table ............................................96

Utilisation des verrous _________ 99


Diffrents types de verrous ................ 101 Lock en shared ...................................................101 Lock en exclusif ..................................................101 Lock en destruction ............................................101 Lock en modification...........................................101 Les verrous des fichiers et des enregistrements.................................. 102 Locks des fichiers...............................................102 Locks des enregistrements ................................102 Fonctionnement de ces locks.............................103 Gestion des locks dans les applications 100 .....104 Supprimer tous les verrous suite un plantage dapplication......................................105

Procdures stockes, cls et Triggers _________________________ 85


Procdures stockes Sage daccs aux donnes .......................................... 87 Les dclencheurs (Triggers) ................. 88 Triggers CBase.................................................... 88 Triggers Applicatifs .............................................. 89 Contraintes dintgrit et index............ 89

Lecture et criture dans les tables Sage ____________________ 107


Conseils............................................... 109 Lecture................................................................109 Fonctions avances ...........................................109 Ecriture via le driver ODBC 11.01 ......................109

Administration et recommandations _____________ 111

Mcanismes de notification ____ 91


III
Sage France

Sommaire Optimisation et rorganisation de la base ___________________________________ 113 Dveloppements externes et options SQL ......................................................114 Options............................................................... 114 Ordres SQL relatifs aux index............................ 114 Paramtrage de ces options.............................. 114 Procdure sp_dboption ................................ 115 Utilisation de la commande SET........................ 116 Plan de maintenance...........................117 Erreur dexcution du plan de maintenance ...... 117 Options requises pour les champs calculs ...... 117 Plan de maintenance ......................................... 118 Nouveaux plans de maintenance ...................... 118 Modification plan de maintenance ..................... 120 SCRIPT.............................................................. 122 Infomations complmentaires............................ 123

Annexes _______________________ 125


Annexe 1 : Equivalence des types des champs Sage / Microsoft SQL Server 2000 ___________________________ 127 Annexe 2 : Informations libres _______ 128 Comptabilit 100 ................................................ 128 Gestion Commerciale 100 ................................. 128 Equivalence de types : Information libre Sage / Donnes Microsoft SQL Server 2000 .............. 128 Ajout / Suppression dinformations libres sous Microsoft SQL Server 2000....................... 129

IV
Sage France

Gnralits
Compatibilit avec les applications Sage Ligne 100 ______________ 3 Architecture des versions SQL_____________________________________ 4 Particularits de Microsoft Windows, Windows NT/2000 et Microsoft SQL Server 2000_________________________________________ 4 Particularits des applications Ligne 100 pour SQL Server _______ 4 Nouveauts fonctionnelles Ligne 100 version 11.00 ______________ 5 Optimisation SQL ________________________________________________ 5 Impression des tats ______________________________________________ 5 Gestion Commerciale et Saisie de Caisse Dcentralise 100_____ 9 Stockage des montants HT et TTC ___________________________________ 9

1
Sage France

Gnralits

2
Sage France

Gnralits

Gnralits

Compatibilit avec les applications Sage Ligne 100


Le cd-rom de la Ligne 100 pour SQL Server V11.00 permet linstallation des applications suivantes : Comptabilit 100 pour SQL Server version 11.00, Gestion Commerciale 100 pour SQL Server version 11.00, Saisie de Caisse Dcentralise 100 pour SQL Server version 11.00, Moyen de Paiements 100 pour SQL Server version 11.00, Immobilisation 100 pour SQL Server version 11.00.

Ces versions SQL de la Ligne 100 ne peuvent accder quaux bases Ligne 100 SQL. Laccs aux bases propritaires pour ces applications 100 SQL est impossible avec laccs CBase SQL Server. La conversion dune base Ligne 100 propritaire en Ligne 100 SQL peut tre ralise via le programme Maintenance install par dfaut par les applications Ligne 100 pour SQL Server.
Voir

Le chapitre Conversion.

3
Sage France

Gnralits

Architecture des versions SQL

Particularits de Microsoft Windows, Windows NT/2000 et Microsoft SQL Server 2000


Tout au long de ce manuel, nous nous efforcerons dutiliser le vocabulaire et la description des manuvres propres Microsoft Windows, Windows NT/2000 et Microsoft SQL Server. Si ces particularits ne vous sont pas familires, il est vivement souhaitable de vous reporter la documentation fournie par les diteurs de ces produits.

Particularits des applications Ligne 100 pour SQL Server


Les applications Ligne 100 pour SQL Server prsentent les particularits suivantes : Les fonctions disponibles sont identiques celles des mmes applications propritaires. Le partage de donnes entre les applications Ligne 100 propritaires et les applications Ligne 100 pour SQL Server nest pas autoris. Le passage dune base propritaire en base Ligne 100 pour SQL Server Windows est effectu par loutil de maintenance livr en standard avec le programme.

4
Sage France

Gnralits

Nouveauts fonctionnelles Ligne 100 version 11.00


Optimisation SQL Les optimisations des applications Ligne 100 sur limpression des tats ont t apportes en version 10.50. Dautres fonctions ont t optimises en version 11.00. Impression des tats Une grande partie des tats imprims des applications de la Ligne 100 SQL bnficient maintenant dune option supplmentaire permettant damliorer significativement les performances dimpression. La fentre de slection dispose dans ce cas dune nouvelle option Traitement : Avec des critres tendus : les impressions seffectuent de faon classique : la totalit des critres de slection existants dans les versions antrieures sont disponibles ; Rapide simplifi : seuls les critres de slection principaux sont disponibles, ce qui permet une augmentation significative des performances dimpression.

5
Sage France

Gnralits
Exemple : Statistiques clients Lorsque le traitement slectionn est Rapide simplifi, seuls les principaux critres de slection sont disponibles :

Lorsque le traitement slectionn est Avec des critres tendus, la totalit des critres de slection sont utilisables :

6
Sage France

Gnralits

Ce critre est galement disponible dans la fentre du format de slection obtenue laide du bouton Plus de critres. Lorsque la zone liste droulante Traitement est positionne sur Rapide simplifi, seuls les critres de slection concerns par le traitement SQL sont actifs. Bien quil soit possible dajouter dautres critres dans cette fentre, seuls les critres proposs par dfaut seront appliqus. Tous les autres critres ventuellement ajouts seront ignors.

7
Sage France

Gnralits
Exemple : Statistiques clients Lorsque le traitement slectionn est Rapide simplifi, seuls les principaux critres de slection sont disponibles.

Lajout dautres critres de slection naura aucune incidence sur le traitement. Lorsque le traitement slectionn est Avec des critres tendus, la totalit des critres de slection sont utilisables. Il est alors possible dajouter dautres critres de slection :

8
Sage France

Gnralits

Gestion Commerciale et Saisie de Caisse Dcentralise 100


Stockage des montants HT et TTC Les stockage des montants HT et TTC des lignes de documentes permet un dveloppement spcifique sur SQL. Les traitements cumulant les montantes HT et TTC des lignes de documents (notamment les fonctions du menu Etat) donnent ainsi des temps de rponse plus rapides.

9
Sage France

Gnralits

10
Sage France

Installation
Pr requis obligatoires _____________________________________ 13
Installation des applications _____________________________________ 14 Recommandations pour linstallation_________________________________ 14

Configuration et lments installs _______________________ 15


Poste Serveur ____________________________________________________ 15 Configuration ___________________________________________________ 15 Matriel _______________________________________________________ 15 Elments installs _______________________________________________ 16 Poste Client ______________________________________________________ 17 Partie Client____________________________________________________ 17

Configuration_________________________________________________________ 17 Matriel _____________________________________________________________ 17 Elments installs _____________________________________________________ 17

Applications Ligne 100 sous SQL Server _____________________________ 17 Manuels lectroniques ___________________________________________ 18

Installation _________________________________________________ 19

Bienvenue ___________________________________________________________ 19 Slection du ou des logiciels installer ____________________________________ 20

Installation du poste Serveur ____________________________________ 21 Assistant dinstallation ____________________________________________ 21 Cration des bases BIJOU et C_MODEL _____________________________ 22

Base de donnes BIJOU________________________________________________ 22 Base de donnes C_MODEL ____________________________________________ 23

Installation du poste client ______________________________________ 24 Installation de la Partie Client ______________________________________ 24

Assistant dinstallation__________________________________________________ 24 Configuration du serveur SQL____________________________________________ 25

11
Sage France

Installation

ActiveX Data Objects 2.6 Sp2 ____________________________________________26 Sage Installation ______________________________________________________27 Protocole rseau ______________________________________________________28 CBASE32 ___________________________________________________________29

Installation des applications 100 _____________________________________29

12
Sage France

Installation
Ce chapitre dcrit la procdure dinstallation de la Ligne 100 pour SQL Server version 11.00. Lisez bien les informations donnes sous le titre Pr Requis obligatoires avant dinstaller la Ligne 100 pour SQL Server, sinon vous pourriez avoir des erreurs linstallation.

Pr requis obligatoires
Avant dinstaller la Ligne 100 pour SQL Server, assurez vous bien que les deux lments suivants sont prsents sur vos postes serveur et clients. Microsoft SQL Server 2000 doit tre install et configur sur votre poste serveur. Si vous effectuez une mise jour de SQL version 7 en SQL 2000, il est ncessaire de convertir linstance par dfaut SQL 7 en SQL 2000 (ne pas crer dinstance nomme lors de linstallation). Vous pourrez crer ultrieurement une instance nomme SQL 2000. Microsoft Internet Explorer version 4.01 Service Pack 2 ou suprieur doit tre install sur votre poste client pour les postes Microsoft Windows 95, Windows 98, Windows Millennium, Windows 2000, Windows XP ou Windows NT 4.

Ces pr requis sont obligatoires. Par consquent vrifiez bien ces deux points avant linstallation.

13
Sage France

Installation

Installation des applications


Les applications Ligne 100 version 11.00 pour SQL Server sont livres avec 3 cd-rom : cd-rom dinstallation de Microsoft SQL Server 2000 Edition Standard, cd-rom dinstallation du Service Pack 2 de Microsoft SQL Server 2000, cd-rom dinstallation de la Ligne 100 version 11.00.

Recommandations pour linstallation Vous devez procder linstallation de Microsoft SQL Server 2000 Standard Edition sur le poste serveur avant toute conversion ou cration de base partir des applications Ligne 100 pour SQL Serveur. Si votre poste serveur est dj quip de Microsoft SQL Server 2000, veuillez ne pas procder une nouvelle installation. Il est ensuite prconis dinstaller le Service Pack 2 de Microsoft SQL Server 2000. Procdez enfin linstallation des applications de Ligne 100.

14
Sage France

Installation

Configuration et lments installs


Linstallation de la Ligne 100 sous SQL Server V11.00 se droule en plusieurs tapes. Installation de la Ligne 100 pour SQL Server, partie Serveur V11.00, Installation de la Ligne 100 pour SQL Server, poste Client V11.00, Installation des applications Ligne 100 pour SQL Server V11.00, Installation des manuels lectroniques.

Poste Serveur
Configuration Matriel Configuration minimale conseille : Processeur : Pentium III 500 Mhz, 512 Mo de RAM. Le poste Serveur doit tre obligatoirement un poste WINDOWS NT en version franaise (2000 ou NT 4 Workstation ou Serveur, avec le service Pack 6a). Microsoft SQL Server 2000 version franaise doit tre pralablement install et configur. Ce poste doit tre membre dun DOMAINE NT pour que les applications 100 SQL fonctionnent correctement. Il faut obligatoirement tre en accs Administrateur sur le poste Windows NT.

15
Sage France

Installation
Elments installs La Ligne 100 pour SQL Server Partie Serveur installe les lments suivants, sils sont TOUS non prsents : Procdures stockes tendues (base Master), Bases dexemples BIJOU (base comptable, base commerciale, base immobilisation, base moyen de paiement) Base Modle de comptabilit (C_MODEL)

REMARQUES IMPORTANTES : 1. 2. 3. Linstallation de la Ligne 100 sous SQL Server ncessite un poste Windows NT 4 ou Windows 2000 en version franaise. La version de SQL Server 2000 installe doit tre en version franaise. Linstallation de la partie Serveur sarrte et ninstalle rien dans les cas suivants : Lutilisateur nest pas Administrateur sur le poste Windows NT/Windows 2000, Microsoft SQL Server 2000 nest pas install sur votre machine.

16
Sage France

Installation

Poste Client
Partie Client
Configuration

Une application Ligne 100 pour SQL Server peut tre exploite sur un micro-ordinateur quip de Windows 95, Windows 98, Windows Millennium, Windows NT4, Windows 2000 ou Windows XP). Comme indiqu dans les pr requis, Internet Explorer 4.01 Sp2 ou suprieur doit tre install sur votre poste client.
Matriel

Configuration minimale conseille : Pentium III 500 Mhz, 64 Mo de RAM.

Elments installs

Les ADO 2.6 (ActiveX Data Objects) Sp2, Sage Installation, Version CBASE32.DLL avec Accs SQL Server.

Applications Ligne 100 sous SQL Server Le programme dinstallation permet dinstaller les produits suivants : Comptabilit 100 pour SQL Server V11.00, Gestion Commerciale 100 pour SQL Server 11.00, Saisie de Caisse Dcentralise 100 pour SQL Server 11.00, Immobilisations 100 pour SQL Server 11.00, Moyens de Paiement 100 pour SQL Server 11.00.

17
Sage France

Installation
Manuels lectroniques Les manuels lectroniques au format PDF inclus dans ce package sont les suivants : Manuel de rfrence de la Comptabilit 100, Manuel de rfrence de la Gestion Commerciale 100, Manuel de rfrence de la Saisie de caisse dcentralise 100, Manuel de rfrence de Immobilisations 100, Manuel de rfrence de Moyens de Paiement 100, Manuel de la gamme Ligne 100 pour Windows, Guide de lEuro, Manuel de rfrence de Structure Ligne 100.

La lecture des fichiers au format PDF ncessite linstallation pralable du programme Acrobat Reader que vous pouvez installer en mme temps que les manuels lectroniques. Veuillez, pour cela, cocher loption correspondante dans la liste des composants installer par le programme dinstallation des manuels.

18
Sage France

Installation

Installation
Pour raliser la premire installation du programme sur le disque dur, effectuez les oprations suivantes : Allumez le micro-ordinateur et attendez que les oprations dinitialisation sexcutent. Introduisez le cd-rom dans le lecteur. Cliquez sur le bouton Dmarrer et attendez que la liste souvre. Slectionnez la commande Excuter. Tapez D:\setup (ou E:\setup selon le nom de votre lecteur cd-rom). Cliquez sur le bouton OK ou validez (pressez la touche ENTREE). Vous pouvez galement utiliser le bouton Parcourir pour slectionner le fichier SETUP.EXE qui se trouve sur le cd-rom.

Cliquez sur le bouton OK pour continuer linstallation ou sur Annuler pour larrter.
Bienvenue

Une succession dcrans va alors apparatre pour vous aider installer le logiciel. Elle commence par celui intitul Bienvenue. Suivez trs exactement les consignes qui y sont portes et rpondez aux questions poses. Nous dtaillons ci-aprs les points les plus importants de linstallation.

19
Sage France

Installation

Pour passer dun cran au suivant tout en validant les saisies ventuellement faites, il suffit en gnral de cliquer sur le bouton Suivant.
Slection du ou des logiciels installer

La fentre ci-dessus vous propose de slectionner le ou les logiciels installer. Par dfaut, aucune application nest slectionne. Pour en slectionner une, il suffit de cliquer dans la case cocher correspondante. Vous disposez galement des boutons Slectionner tout et Effacer tout pour acclrer votre choix. Cliquez ensuite sur le bouton Suivant pour passer ltape suivante.
20
Sage France

Installation

Installation du poste Serveur


Vous trouverez ci-dessous les diffrentes tapes de linstallation de la Ligne 100 pour SQL Server partie Serveur, savoir : Slection de linstance Microsoft SQL Server 2000 et copie de fichiers, Cration de la base dexemples BIJOU (base comptable, base commerciale, base immobilisation, base moyen de paiement), Cration de la base Modle de la comptabilit (C_MODEL).

Microsoft SQL Server 2000 version franaise doit tre obligatoirement install sur le poste serveur. Dans le cas contraire, un message derreur vous indiquera de linstaller. Si vous effectuez une mise jour de SQL version 7 en SQL 2000, il est ncessaire de convertir linstance par dfaut SQL 7 en SQL 2000 (ne pas crer dinstance nomme lors de linstallation). Vous pourrez crer ultrieurement une instance nomme SQL 2000. Si cette consigne nest pas respecte, vous pourrez constater des problmes dutilisation si le poste client utilis pour la conversion dune base Ligne 100 SQL dune ancienne version en V11 nest pas correctement configur. Assistant dinstallation Linstallation se poursuit avec lcran de Bienvenue dans lInstallshield Wizard de la Ligne 100 pour SQL Server partie Serveur.

Cliquez sur le bouton Suivant.


21
Sage France

Installation
Lcran suivant napparat que si vous avez plusieurs instances Microsoft SQL Server 2000 installes sur votre poste serveur. Exemple Dans lexemple ci-dessous, les instances INSTANCE1 et INSTANCE2 sont des instances nommes de Microsoft SQL Server 2000.

Toutes les instances Microsoft SQL Server 2000 sont listes. Slectionnez linstance que vous souhaitez utiliser et cliquez sur le bouton Suivant. Cration des bases BIJOU et C_MODEL Aprs copie des fichiers pour la partie Serveur, linstallation se poursuit par la cration de la base de donnes dexemples BIJOU, ainsi que de la base Modle de la Comptabilit 100 pour SQL Server.
Base de donnes BIJOU

Cette base de donnes regroupe toutes les donnes, tables, de toutes les bases Bijou (base Comptable, Commerciale, Immobilisation et Moyen de Paiement).

Si la base Bijou existe dj sur le poste serveur, un nouveau message sera affich :

22
Sage France

Installation

Rpondez Oui pour rinstaller la base Bijou ou sur Non pour conserver votre base actuelle.
Base de donnes C_MODEL

Cette base est utilise lors de la cration dune nouvelle base en Comptabilit 100.

Si la base C_Model existe dj sur le poste serveur, le programme dinstallation vous demandera de remplacer le fichier existant. Cliquez sur loption souhaite Oui / Non pour poursuivre la procdure dinstallation.

23
Sage France

Installation

Installation du poste client


Linstallation du poste client se droule en deux tapes : 1. 2. Installation de la Ligne 100 pour SQL Server, poste Client V11.00. Installation des applications SQL Ligne 100 V11.00.

Installation de la Partie Client Linstallation de la partie client seffectue en cochant loption Ligne 100 pour SQL Server poste client dans ltape Slection des applications installer. Cette opration doit tre ralise pour chaque poste client.
Assistant dinstallation

Lassistant dinstallation suivant vous propose dinstaller la partie client de la Ligne 100 pour SQL Server. Cliquez sur le bouton Suivant pour continuer. La fentre Bienvenue dans lInstallshield Wizard Ligne 100 pour SQL Server poste client indique le dmarrage de linstallation du programme.

Cliquez sur le bouton Suivant pour poursuivre la procdure dinstallation et sur Annuler pour larrter.

24
Sage France

Installation
Configuration du serveur SQL

Cette tape vous permet de prciser le nom du serveur SQL qui sera utilis pour stocker les bases de donnes Ligne 100 pour SQL Server. Le nom du serveur saisi sera initialis dans les fichiers INI (raccourcis) permettant louverture des fichiers de gestion Ligne 100 SQL. Si vous ne connaissez pas le nom du serveur SQL renseigner, demandez-le votre administrateur du rseau. REMARQUES IMPORTANTES 1. Si vous avez cr une instance Microsoft SQL Server 2000 nomme, le nom du serveur renseigner dans la zone ci-dessus est : Nom_Serveur_SQL\Nom_instance 2. 3. Dans le cas dune instance Microsoft SQL Server 2000 par dfaut, indiquez uniquement le nom du serveur SQL dans la zone ci-dessus. Le nom du serveur renseigner doit tre imprativement un nom de serveur Microsoft SQL Server 2000 et non pas Microsoft SQL Server 7. Dans le cas contraire, vous pourriez constater des problmes lors de lutilisation de la Ligne 100 SQL V11.

Le nom du serveur nest pas obligatoire. Ce dernier peut tre renseign ultrieurement partir de licne Sage Installation du panneau de configuration de Windows du poste de travail. Cliquez sur le bouton Suivant pour continuer.

25
Sage France

Installation
ActiveX Data Objects 2.6 Sp2

Lutilisation des applications Ligne 100 pour SQL Server ncessite obligatoirement les ADO 2.6 (ActiveX Data Objects) Sp2. Linstallation se fait alors de manire automatique sils ne sont pas dj installs. Cependant vous pourriez voir safficher un cran vous demandant de quitter certains programmes ou arrter certains services tels que le service Microsoft SQL Server. Procdez larrt de ces services ou de ces programmes avant de poursuivre linstallation. Exemple Dans lexemple ci-dessous il faut arrter le service Microsoft SQL Server avant de poursuivre linstallation.

Cliquez sur le bouton Suivant pour installer ADO version 2.6 Sp2. Aprs linstallation des ADO 2.6 Sp2, le programme dinstallation vous demandera de redmarrer votre machine.

26
Sage France

Installation

Sage Installation

Le programme dinstallation va crer dans le Panneau de Configuration une icne Sage Installation.

Vous pourrez en cliquant sur cet icne modifier laccs SAGE : Accs SQL Server.

La zone Serveur correspond au nom du Serveur SQL utilis pour les bases de la Ligne 100 sous SQL Server. Si vous dsirez modifier le nom du Serveur SQL, cliquez sur le bouton Configurer.

Indiquez alors dans la zone Serveur, le nom de votre nouveau Serveur SQL. REMARQUES IMPORTANTES Les remarques mentionnes plus haut concernant le nom du serveur au niveau de linstallation restent
27
Sage France

Installation
valables : 1. Si vous avez cr une instance Microsoft SQL Server 2000 nomme, le nom du serveur renseigner dans la zone ci-dessus est : Nom_Serveur_SQL\Nom_instance 2. 3. Dans le cas dune instance Microsoft SQL Server 2000 par dfaut, indiquez uniquement le nom du serveur SQL dans la zone ci-dessus. Le nom du serveur renseigner doit tre imprativement un nom de serveur Microsoft SQL Server 2000 et non pas Microsoft SQL Server 7. Dans le cas contraire, vous pourriez constater des problmes lors de lutilisation de la Ligne 100 SQL V11.

Le nom du serveur renseign cet endroit sera utilis lors de la cration dune base ou lors de la conversion de la base Ligne 100 SQL. Si vous souhaitez modifier le nom du serveur sur lequel sont stockes vos bases de donnes existantes, il est ncessaire douvrir les fichiers INI de votre base Ligne 100 SQL (BIJOU.MAE, BIJOU.GCM,) et dapporter les modifications ncessaires via un diteur de texte tel que le Blocnotes de Windows.
Protocole rseau

Vous avez la possibilit de spcifier le protocole rseau pour SQL Server. Ces protocoles sont les mmes que ceux indiqus dans l Utilitaire rseau du client SQL Server pour ceux qui ont dj installs la partie client de SQL Server sur leur poste. Les protocoles proposs dans Sage Installation sont les suivants : Dfaut, Canaux nomms, TCP/IP, Multiprotocole, Appletalk, Banyan Vines.

Si loption Dfaut est active, le protocole sera le mme que celui spcifi dans l Utilitaire rseau du client SQL Server .
28
Sage France

Installation
Veuillez consulter votre administrateur SQL pour plus dinformations sur ces protocoles afin doptimiser les performances des applications Ligne 100 pour SQL Server.

1. 2.

Les ADO 2.6 sont installs sous PROGRAM FILES\FICHIERS COMMUNS\SYSTEM, dans les rpertoires ADO, OLEDB et MSADC. Le nom du Serveur SQL indiqu dans Sage Installation nest utilis quen cration de bases SQL 100 et est stock dans la base de Registre sous : HKEY_LOCAL_MACHINE\SOFTWARE\SAGE\CBASE Valeur Chane : ServeurSQL

CBASE32

La DLL CBASE32 est copie dans le rpertoire systme de votre poste avec Accs SQL Server. Installation des applications 100 Avant dinstaller les applications 100 pour SQL Server, vrifiez que vous avez install la partie Serveur et Client. Ces tapes sont obligatoires au fonctionnement des applications 100 pour SQL Server. Pour le processus dinstallation des applications, veuillez vous rfrer au manuel de chaque application fourni avec le package.

29
Sage France

Installation

30
Sage France

Connexion et erreurs frquentes

Connexion et erreurs frquentes


Connexion __________________________________________________ 33
Connexion un domaine Windows NT/Windows 2000 ___________ 34 Postes Clients Windows 95, 98 et Millennium __________________________ 34 Postes Clients Windows NT _______________________________________ 35 Cration dutilisateurs sous Microsoft SQL Server 2000 ________ 36 Erreurs les plus frquentes et solutions _________________________ 39 Echec de connexion la base de donnes____________________________ 39 Erreur 6706 ___________________________________________________ 40 Erreur 5 _______________________________________________________ 41

31
Sage France

Connexion et erreurs frquentes

32
Sage France

Connexion et erreurs frquentes

IMPORTANT La lecture de ce chapitre est essentielle avant douvrir ou de crer des bases Ligne 100 sous Microsoft SQL Server. Aussi nous vous invitons le lire attentivement.

Connexion
Les applications 100 pour SQL Server utilisent une connexion Microsoft SQL Server avec authentification NT. Cest un mode de connexion scuris qui demande que le poste client soit connect un rseau Windows NT et que lutilisateur possde les droits sur la base de donnes Microsoft SQL Server. Il faut, comme indiqu dans le chapitre Installation, que Microsoft SQL Server soit install sur un Serveur NT qui appartienne un domaine NT. Vous trouverez ci-dessous les pr requis ncessaires pour se connecter aux bases de donnes de la Ligne 100 sous SQL Server. 1. 2. Connexion au domaine Windows NT o se trouve le Serveur SQL 2000. Droits sur les bases de donnes de la Ligne 100 SQL.

Ces 2 points sont dtaills ci-dessous.

33
Sage France

Connexion et erreurs frquentes

Connexion un domaine Windows NT/Windows 2000


Les postes clients qui se connectent aux applications 100 SQL doivent tout dabord bien vrifier quils se connectent sur le domaine NT o se trouve le Serveur SQL 2000 ou sur un domaine approuv. Postes Clients Windows 95, 98 et Millennium Pour vrifier que vous ouvrez une session sur un domaine Windows NT, cliquez sur licne Rseau de votre Panneau de Configuration.

Faites un double-clic sur Client pour les rseaux Microsoft.

Indiquez dans Domaine Windows NT, le nom du domaine NT o se trouve votre serveur SQL. Demandez-le votre Administrateur Rseau si vous ne le connaissez pas.

34
Sage France

Connexion et erreurs frquentes

Postes Clients Windows NT Sur les postes clients Windows NT, slectionnez le domaine NT lors de lentre du login NT. Si vous ne pouvez accder au domaine NT, demandez votre administrateur Rseau le nom du Serveur Microsoft SQL 2000 et les paramtres rseaux configurer.

35
Sage France

Connexion et erreurs frquentes

Cration dutilisateurs sous Microsoft SQL Server 2000


Les utilisateurs qui vont ouvrir (et qui ne sont pas les crateurs de la base SQL) des bases de donnes SQL 100 doivent possder des droits sur les bases Microsoft SQL Server, savoir : Public, db_datareader, db_datawriter.

Ces droits sont les droits minimum avoir pour pouvoir se connecter aux applications 100 pour SQL Server. Cette procdure doit tre faite par votre administrateur Rseau ou SQL, sous Microsoft SQL Server 2000, via par exemple Entreprise Manager. Vous trouverez la procdure pour crer de nouvelles connexions SQL Server avec les bons droits : Pour cela : 1. 2. 3. 4. Ouvrez Entreprise Manager. Slectionnez votre Serveur SQL. Ouvrez le dossier Scurit. Slectionnez Connexions.

5.

Crez une nouvelle connexion.

36
Sage France

Connexion et erreurs frquentes

Dans la zone Nom, indiquez un nom dutilisateur rfrenc ou un Groupe NT du domaine. Dans la zone Domaine : indiquez le nom de votre Domaine NT. Ouvrez longlet Accs aux bases de donnes.

37
Sage France

Connexion et erreurs frquentes

Slectionnez la base SQL 100 et donnez lui les droits : db_datareader db_datawriter

Le droit Public est automatiquement cr et donc sera coch automatiquement. Cette procdure doit tre faite pour toutes les bases SQL Ligne 100, y compris pour la base exemple BIJOU. Vous ntes pas oblig de renseigner des rles dans longlet Rles du Serveur.

38
Sage France

Connexion et erreurs frquentes

Erreurs les plus frquentes et solutions


Vous trouverez ci-dessous les erreurs les plus frquentes lors de louverture des bases de la Ligne 100 sous SQL Server. Echec de connexion la base de donnes Cette erreur peut se produire pour diffrentes raisons. Vous trouverez ci-dessous diffrents cas possibles avec leurs solutions. Les 4 premiers problmes sont les plus frquents. Problme N 1 Vous ne vous tes pas logu sur le Domaine NT o se trouve le Serveur SQL. Solution Vrifiez bien que vous avez ouvert une session sur le domaine Windows NT. Problme N2 Vous navez pas les droits sur la base Microsoft SQL Server. Solution Demandez votre administrateur Rseau de vous donner les droits sur la base de donnes SQL 100. Problme N3 Les ADO (Active X Data Objects) 2.6 Sp2 ne sont pas installs ou mal installs sur votre poste. Solution Vrifiez la version des fichiers ADO installes dans le rpertoire PROGRAM FILES / FICHIERS COMMUNS / SYSTEM / ADO ou, dans la base de registre (menu Dmarrer / Excuter / Regedit), que vous avez la cl suivante : HKEY_LOCAL_MACHINE\Software\Microsoft\DataAccess Si cette cl existe : supprimez-la et excutez linstallation de la Ligne 100 pour SQL Server Poste Client. Sinon : excutez linstallation de la Ligne 100 pour SQL Server Poste Client.

39
Sage France

Connexion et erreurs frquentes


Problme N4 Vous effectuez un glisser dplacer de votre fichier Ligne 100 SQL vers lapplication correspondante, avec un nom ayant plus de 8 caractres. Solution Ouvrez le fichier via lapplication. Il faut en effet, lors de la cration, que la base soit cre avec un nom DOS (8 caractres maximum selon les rgles correspondantes). Problme N5 La base de donnes Microsoft SQL Server na pas t trouve. Solution Vrifiez avec votre administrateur que la base SQL na pas t supprime . Si cest le cas demandez lui de restaurer une ancienne version de votre base SQL. Vrifiez le nom de votre fichier comptable, commercial, immobilisation ou moyen de paiement. Le nom du fichier sans lextension doit correspondre un nom de base de donnes existant.

Il se peut que vous ayez renomm votre fichier par erreur, auquel cas redonnez lui le nom dorigine. Problme N6 La section ServeurSQL de votre fichier comptable, commercial, immobilisation ou moyen de paiement ne correspond pas un serveur SQL existant ou nest pas le bon Serveur SQL. Solution Editez votre fichier via un diteur de texte tel que WORDPAD et renseignez le bon Serveur SQL. Erreur 6706 Problme Vous avez les messages suivants : Erreur inconnue [800A0E7A] ! Erreur inconnue [-6706] !

Solution Les ADO 2.6 Sp2 ne sont pas installs sur votre machine. Excutez linstallation de la Ligne 100 pour SQL Server Poste Client.

40
Sage France

Connexion et erreurs frquentes


Erreur 5 Problme Une erreur 5 (Accs refus) est survenue lors de l'excution de cette opration de service sur le service MSSQL Server. Une personne essaye darrter le service SQL sur la machine Serveur alors que des utilisateurs sont encore connects une base SQL. Solution Quittez les applications 100 et attendez que le service soit redmarr par votre administrateur rseau.

41
Sage France

Connexion et erreurs frquentes

42
Sage France

Cration des bases Ligne 100 SQL sous Microsoft SQL Server 2000
Cration des bases Ligne 100 SQL sous Microsoft SQL Server 2000 ________________________________________________ 45
Cration de bases au moyen des applications Ligne 100 pour SQL Server __________________________________________________ 45 Fichier INI sur le poste client _______________________________________ 47 Base SQL _____________________________________________________ 47

Fichiers MDF et LDF ___________________________________________________ 47

Plusieurs bases Sage dans la mme base SQL ________________________ 48

43
Sage France

Cration des bases Ligne 100 SQL sous Microsoft SQL Server 2000

44
Sage France

Cration des bases Ligne 100 SQL sous Microsoft SQL Server 2000

Cration des bases Ligne 100 SQL sous Microsoft SQL Server 2000
La Ligne 100 pour SQL Server V11 fournit deux possibilits pour crer des bases : soit par les logiciels de la Ligne 100 pour SQL Server V11 (Comptabilit, Gestion commerciale, Saisie de caisse dcentralise, Immobilisations ou Moyens de paiement), soit par le logiciel de Maintenance livr avec les produits de la Ligne 100 pour SQL Server V11.

Ce chapitre prsente la mthode de cration dune base SQL Ligne 100 au moyen des applications de la Ligne 100 pour SQL Server V11. Le chapitre suivant traite plus en dtail la mthode de conversion des bases propritaires ou SQL 100 en version SQL 100 V11 par lutilisation du logiciel de Maintenance. Pour de plus amples informations sur le programme Sage Maintenance, veuillez vous rfrer au Manuel de la gamme fourni avec les applications Ligne 100 pour SQL Server.

Cration de bases au moyen des applications Ligne 100 pour SQL Server
Avant toute conversion ou cration de fichier, veuillez vrifier que laccs au serveur SQL est correctement configur dans Sage Installation du Panneau de configuration Windows. Toutes les manipulations raliser sur le poste serveur et les postes clients sont dcrites dans les chapitres prcdents. Nous vous recommandons de respecter toutes les consignes donnes tout au long de ce manuel avant de poursuivre la procdure de conversion ou de cration de fichier. Pour crer de nouvelles bases de comptabilit, gestion commerciale, saisie de caisse dcentralise, immobilisations ou moyens de paiement par le biais des applications Ligne 100 pour SQL Server correspondantes, il suffit de procder comme suit : 1. Lancez le programme Ligne 100 pour SQL Server avec lequel vous voulez crer la base. Dans Windows ouvrez le menu Dmarrer et slectionnez lapplication voulue dans Applications / Sage. 2. 3. Lancez la commande Fichier / Nouveau de cette application. Suivez les instructions de lassistant de cration.

45
Sage France

Cration des bases Ligne 100 SQL sous Microsoft SQL Server 2000
Exemple Ci-dessous un exemple ave le programme Sage Comptabilit 100 pour SQL Server.

Respectez la convention de nom DOS (8 caractres maximum selon les rgles) pour nommer votre fichier car vous pourriez avoir des problmes pour le crer ou le lire. Le principe est le mme que pour la cration dune base propritaire. Laspect fonctionnel est identique. Cette cration gnre : Un fichier INI (.MAE, .GCM, .IMO ou .MDP), La base sur le serveur SQL avec comme nom le nom du fichier INI sans lextension et en majuscules.

Exemple Si vous souhaitez crer le fichier comptable SOCIETE.MAE , cela crera : Un fichier INI : SOCIETE.MAE (sur votre poste client), Une base SQL : SOCIETE (sur votre serveur SQL).

46
Sage France

Cration des bases Ligne 100 SQL sous Microsoft SQL Server 2000
Fichier INI sur le poste client Lors de la procdure de cration, soit par lapplication par lintermdiaire de la commande Fichier / Nouveau, soit laide du logiciel de Maintenance, il vous est demand le nom du fichier (comptable, commercial, immobilisation ou de moyen de paiement). Les diffrents fichiers (.MAE, .GCM, .IMO ou .MDP) sont en fait des fichier INI structurs de la manire suivante : [CBASE] ServeurSQL=Nom_Serveur_SQL2000 Createur=Numro interne Type=Type_de_BD Ce fichier permet daccder directement aux donnes de la base SQL. Type= CPTA (base comptable) CIAL (base commerciale) IMMO (base immobilisation) TRES (base moyen de paiement) Base SQL
Fichiers MDF et LDF Emplacement

Physiquement la base de donnes SQL se compose de deux fichiers (.MDF et .LDF), correspondant respectivement aux fichiers de donnes et au journal des transactions. Le nom de chaque fichier est : Fichier MDF (fichier de donnes) : NOM_BASE_DE_DONNEES + .MDF Fichier LDF (Journal des transactions) : NOM_BASE_DE_DONNEES + _log.LDF

Ces fichiers sont installs dans le rpertoire utilis par dfaut par Microsoft SQL Server pour stocker les bases de donnes. Ce rpertoire par dfaut est PROGRAM FILES\MICROSOFT SQL SERVER\MSSQL\DATA.

47
Sage France

Cration des bases Ligne 100 SQL sous Microsoft SQL Server 2000
Taille de la base de donnes

La taille dune base Sage SQL (issue dune conversion dune base propritaire en version SQL) est au maximum : Taille de la base propritaire + 60 Mo + taille du fichier log

Si vous faites une conversion, vrifiez donc bien que vous avez lespace ncessaire sur votre disque. Les 60 Mo correspondent la structure de la base (Tables + procdures stockes + triggers) dans le cas o vous avez toutes les tables de votre socit (Comptabilit, Gestion Commerciale, Immobilisations, Moyens de paiement).
Proprits

En cration, les fichiers MDF et LDF ont les proprits suivantes : fichier croissance automatique (10 %), fichier croissance illimite.

Plusieurs bases Sage dans la mme base SQL Le nom de la base de donnes SQL correspond au nom du fichier INI en MAJUSCULES, sans lextension. Ceci se gnralise pour plusieurs bases de types diffrents. Exemple Prenons le cas suivant : Le fichier comptable SOCIETE.MAE est cr avec comme base SQL : SOCIETE. On cre maintenant un fichier de gestion commerciale SOCIETE.GCM avec comme fichier comptable SOCIETE.MAE. Le rsultat sera la cration des tables de gestion commerciale dans la base nomme SOCIETE. Lintrt est de pouvoir gnrer des requtes inter bases en ayant toutes les tables dune mme socit lintrieur de la mme base SQL. La base SOCIETE regroupe donc les tables la fois de comptabilit et de gestion commerciale. Le processus est identique pour des tables de Moyen de Paiement et Immobilisation qui peuvent tre dans la mme base de donnes SQL. Vous ne pouvez pas mettre deux bases de mme type dans la mme base SQL, par exemple deux bases comptables.

48
Sage France

Outil de maintenance et Conversion


Outil de maintenance ______________________________________ 51 Conversion des bases______________________________________ 51
Recommandations _______________________________________________ 51 Dfinition du modle de rcupration des donnes _____________________ Vrification de lespace disque disponible_____________________________ Temps de conversion dune base commerciale ________________________ Oprations raliser aprs conversions ______________________________ 52 53 53 53

Conversion des bases SQL 100 V9.XX et infrieures ____________ 54 Principe _______________________________________________________ 54

1re tape ___________________________________________________________ 54 2me tape __________________________________________________________ 54

Conseils pour les dveloppements externes ___________________________ 55 Conversion ____________________________________________________ 56 Conversion base propritaire V10.XX et infrieure______________ 59 Conversion dune base propritaire V11.XX en SQL 100 V11 _____________ 60 Temps de conversion indicatifs _____________________________________ 63

Configuration de la machine _____________________________________________ 63

Rorganisation de la base relationnelle _________________________ 64

49
Sage France

Outil de maintenance et Conversion

50
Sage France

Outil de maintenance et Conversion

Outil de maintenance
Outre les possibilits dcrites dans le manuel de la gamme Ligne 100 pour Windows, loutil de maintenance install avec les applications Ligne 100 pour SQL Server permet de : Raliser toutes les conversions de vos bases de donnes en Ligne 100 pour SQL Server V 11.00 Rorganiser la base relationnelle

Conversion des bases


Ce chapitre vous explique comment convertir des bases propritaires 100 (antrieures aux versions 10.XX) et SQL 100 V10.XX en version SQL Ligne 100 version 11.00. Pour convertir vos fichiers, utilisez le logiciel Sage Maintenance livr avec les produits de la Ligne 100 pour SQL Server.

Recommandations
Avant de procder toute conversion de bases Ligne 100 en Ligne 100 pour SQL Server V11.00, veuillez respecter les recommandations suivantes. Celles-ci vont vous aider raliser lopration de conversion dans les meilleures conditions. Elles vont galement vous permettre de gagner du temps et de lespace disque sur le poste serveur: Raliser obligatoirement une sauvegarde de vos donnes pour pouvoir repartir des donnes initiales en cas derreur de manipulation. Dfinition du modle de rcupration des donnes. Vrification de lespace disque disponible. Temps de conversion dune base commerciale. Oprations raliser aprs conversion, avant lexploitation dans la Ligne 100 pour SQL Server.

51
Sage France

Outil de maintenance et Conversion


Dfinition du modle de rcupration des donnes Nous vous recommandons dopter pour un modle simple de rcupration des donnes SQL, au lieu du mode complet. Le modle simple permet de purger lhistorique du fichier des logs aprs chaque point de contrle.

Vous pouvez accder cette option via les proprits de la base convertir dans loutil Entreprise Manager de Microsoft SQL Server. Les commandes SQL permettant de modifier les deux modes de rcupration des donnes dans le module Analyseur de requtes SQL sont : Modle complet : ALTER DATABASE [Nom_BD] SET RECOVERY FULL Modles simple : ALTER DATABASE [Nom_BD] SET RECOVERY SIMPLE Voici deux exemples de la taille approximative du fichier des logs selon les deux modes de
52
Sage France

Outil de maintenance et Conversion


rcupration des donnes.
Taille de base convertir 350 Mo 1,4 Go 200 Mo 500 Mo Taille du fichier des logs aprs conversion Mode simple 500 Mo 3 Go Mode complet

Vrification de lespace disque disponible Pour russir la conversion de vos bases de donnes en version 11.00 pour SQL Server, veuillez vrifier pralablement que lespace disque disponible sur le poste serveur permet non seulement daccueillir les donnes de vos bases en version 11.00 mais galement des fichiers des logs. Temps de conversion dune base commerciale Lorsque vous ralisez une conversion dune base commerciale issue dune version antrieure la version 11,00, le programme doit recalculer et enregistrer de nouvelles informations, notamment le Montant HT et le Montant TTC des lignes de documents et des abonnements. De ce fait, le temps de conversion dune base commerciale est plus important que celui dune base comptable de mme taille. Oprations raliser aprs conversions Les oprations raliser aprs la conversion des bases sont les suivantes : Si vous le souhaitez, vous pouvez remettre loption Modle de rcupration de donnes dorigine (Complet si vous avez bascul en modle simple avant la conversion) Rorganiser la base relationnelle soit par loutil de Maintenance soit via le module Analyseur de requtes SQL (Pour plus de dtails, veuillez vous rfrer au paragraphe Rorganisation de la base relationnelle de ce manuel) Raliser une sauvegarde de la base convertie en respectant les recommandations de Microsoft afin de limiter le volume des donnes sauvegarder (supprimer les entres inactives, rduire physiquement la taille de la base ).

53
Sage France

Outil de maintenance et Conversion

Conversion des bases SQL 100 V10.XX et infrieures


Principe Les bases cres au moyen des applications Ligne 100 SQL V9.xx ou 10.xx doivent tre converties laide du logiciel de Maintenance afin dtre compatibles avec les versions 11.00 de la Ligne 100 SQL. Cette conversion seffectue en 2 tapes.
1re tape

Conversion de la structure interne CBASE, cest dire ajout des champs commenant par CB* tels que ceux runis dans le tableau ci-dessous.
Nom du champ CbCreateur CbModification CbReplication 2me tape Dsignation Nom de lapplication qui cre lenregistrement Date de modification de lenregistrement Type de donnes Char(4) Smalldatetime Valeur par dfaut CSQL GetDate() 0

Etat de rplication (utilis par le logiciel E_Commerce) Int

Le processus seffectue de la manire suivante : Suppression de tous les triggers, index, cls primaires, trangres et uniques de toutes les tables de la base convertir qui respectent la nomenclature suivante, savoir :
54
Sage France

Cls trangres commenant par FKA_, Index commenant par UKA_, Index des tables lignes 100, Triggers commenant par TG_CB, Triggers commenant par TG_INS, Triggers commenant par TG_DEL, Triggers commenant par TG_UPD. Cration dune table temporaire (# + nom de la table T) avec la mme structure que la table T. Ajout de la contrainte PK_CBMARQ_nom de la table temporaire (contrainte de cl primaire sur le champ cbMarq). Insertion dans la table temporaire de toutes les donnes de la table T.

Pour chaque table T Ligne 100 SQL :

Outil de maintenance et Conversion


Truncate de la table dorigine T. Modification du critre de nullit de certaines colonnes de la table T (Null ou Not Null). Ajout ou suppression de colonnes de la table T. Activation de loption SET IDENTITY_INSERT table T ON , Insertion dans la table T de toutes les donnes de la table temporaire #T, Dsactivation de loption SET IDENTITY_INSERT table T OFF.

Pour chaque table T Ligne 100 SQL :

Les tables ou procdures stockes cres via des dveloppements externes ne sont pas modifies. De mme les champs ajouts dans les tables SAGE 100 ne sont pas supprims. Conseils pour les dveloppements externes Comme dit dans la remarque prcdente, la conversion ne supprime pas les tables ou procdures stockes cres via des dveloppements externes. Cependant, il convient de respecter certaines rgles : Faites une sauvegarde de votre base SQL avant la conversion. Gnrez un script SQL de tous vos objets (Triggers, index). Ne nommez pas vos objets comme indiqu ci-dessus (1re tape) car ils seront supprims lors de la conversion : Cls trangres commenant par FKA_, Index commenant par UKA_, Triggers commenant par TG_CB, Triggers commenant par TG_INS, Triggers commenant par TG_DEL, Triggers commenant par TG_UPD.

Dsactivez vos propres triggers avant la conversion et ractivez les aprs conversion.

55
Sage France

Outil de maintenance et Conversion


Conversion Avant toute conversion ou cration de fichier, veuillez vrifier que laccs au serveur SQL est correctement configur dans Sage Installation du Panneau de configuration Windows.

Accs Sage : Accs SQL Server, Nom du serveur : si une instance SQL a t cre, renseignez dans cette zone Nom du serveur SQL\Instance SQL.

Toutes les manipulations raliser sur le poste serveur et les postes clients sont dcrites dans les chapitres prcdents. Nous vous recommandons de respecter toutes les consignes donnes tout au long de ce manuel avant de poursuivre la procdure de conversion ou de cration de fichier. Pour convertir votre ancienne base Ligne 100 SQL procdez comme suit : Lancez le logiciel de Maintenance. Ouvrez votre fichier convertir (.MAE, .GCM, .IMO ou .MDP) ( laide de la commande Menu Fichier / Ouvrir). Le message suivant saffiche lcran :

Cliquez sur Oui pour convertir votre fichier et Non pour annuler la conversion. Si vous cliquez sur Oui, la conversion dbute.

56
Sage France

Outil de maintenance et Conversion


Aprs conversion dinformations systme CBASE, la fentre suivante vous propose de convertir votre fichier en nouvelle version ou de louvrir en version actuelle. Conversion du fichier en nouvelle version : cliquez sur le bouton Suivant pour poursuivre la conversion. Ouverture du fichier en version actuelle : le bouton Suivant se transforme en bouton Fin. Cliquez dessus pour ouvrir le fichier en version actuelle.

Si vous cliquez sur le bouton Suivant, lcran suivant vous propose de lancer la procdure de conversion.

Cliquez sur le bouton Fin pour lancer la procdure.


57
Sage France

Outil de maintenance et Conversion


Avant de procder la conversion de votre base SQL, lisez attentivement le message suivant qui vous indique de : Raliser une sauvegarde pralable de votre base SQL existante. Prendre connaissance des vrifications pralables dcrites dans ce manuel.

Ceci vous permettra de restaurer votre base initiale si la conversion choue.

Cliquez sur : le bouton Oui si toutes les oprations dcrites ont t opres ; le bouton Non pour arrter la conversion si une des prcautions listes na pas t observe.

Un message vous indique que la conversion est en cours en cas de rponse Oui au message ci-dessus.

58
Sage France

Outil de maintenance et Conversion

Conversion base propritaire V10.XX et infrieure


A louverture du fichier par la maintenance, on vous propose de convertir le fichier en nouvelle version.

La conversion du fichier propritaire en Ligne 100 pour SQL Server V11 ne seffectue que si vous avez slectionn : Accs SQL Server dans Sage Installation du Panneau de Configuration.

Cliquez sur le bouton Suivant.

Cliquez sur le bouton Parcourir pour indiquer le nouveau nom du fichier.


59
Sage France

Outil de maintenance et Conversion


Exemple Si le nouveau fichier se nomme C_BIJOU10.MAE, lopration de conversion crera : un fichier INI, C_BIJOU10.MAE sur votre poste client, une base de donnes Microsoft SQL Server 2000 se nommant : C_BIJOU10 (en majuscules) sur votre poste Serveur.

La taille 1000 Ko indique dans cet exemple, correspond la taille de la base propritaire. La taille de la base Microsoft SQL Server correspondante sera au maximum : Taille de la base propritaire (ici 1000 Ko) + 60 Mo maximum (Fichier MDF) + taille du fichier LOG. La taille de 60 Mo correspond la taille dune base vierge avec toutes les tables de tous les produits Comptabilit, Gestion commerciale, Immobilisations, Moyens de Paiement) Cliquez sur le bouton Suivant aprs enregistrement du nom du fichier.

Cliquez alors sur le bouton Fin pour lancer la conversion. Conversion dune base propritaire V11.XX en SQL 100 V11 Cette opration permet de convertir des bases propritaires 100 V11XX en version SQL Ligne 100 V11 Pour cela, dans le menu Maintenance du logiciel Sage Maintenance, slectionnez la commande Convertir en base relationnelle.

60
Sage France

Outil de maintenance et Conversion

Cette commande ouvre une fentre dassistant.

Cliquez sur le bouton Suivant pour poursuivre linstallation.

61
Sage France

Outil de maintenance et Conversion

Cliquez sur le bouton Parcourir pour indiquer le nom de votre fichier. Comme prcdemment en conversion de bases propritaires issues dune ancienne version, la taille de la base SQL sera approximativement quivalente : Taille base propritaire + 60 Mo + taille du fichier des logs de la base. Cliquez sur le bouton Suivant.

Cliquez sur le bouton Fin pour lancer la conversion. Si la commande Convertir en base relationnelle est estompe dans le menu Maintenance, vrifiez bien que vous avez install la partie Client de la Ligne 100 pour SQL Server. Il faut en effet que Sage Installation soit prsent dans votre Panneau de Configuration avec laccs
62
Sage France

Outil de maintenance et Conversion


Sage : Accs SQL Server. Sage Installation est install par le setup via linstallation de la Ligne 100 pour SQL Server Poste Client. Temps de conversion indicatifs Pour information, voici quelques temps de conversion de bases comptables propritaires V10 en version SQL Ligne 100 V11. Ces conversions ont t effectues sur une machine utilise la fois comme Serveur et Client.
Configuration de la machine

Bi Pentium III 550 Mhz avec 512 Mo de RAM.


Fichier Commercial Comptable 661 Mo 630 Mo Taille 2% 3% % doccupation Temps de conversion 5 h 06 mn 3 h 56 mn

63
Sage France

Outil de maintenance et Conversion

Rorganisation de la base relationnelle

Cette fonction devient active dans le menu Maintenance du programme Maintenance lorsquune base Ligne 100 pour SQL Server est ouverte. Cette fonction permet de r-indexer les tables de votre base Ligne 100 SQL et de mettre jour les statistiques. Il est fortement conseill de lancer rgulirement ce traitement aprs avoir effectu un certain nombre de saisies de donnes ou aprs une conversion des donnes. Microsoft SQL Server utilise, en effet, des statistiques collectes pour choisir le meilleur plan dexcution dune requte. De ce fait, avoir des statistiques rgulirement jour vous permet de conserver des performances optimales des traitements dans les applications Ligne 100 pour SQL Server. La frquence de rorganisation de la base est dfinir en fonction du volume de donnes saisies et de la dgradation de performances constate. Nous vous recommandons de lancer ce traitement au moins 1 2 fois par semaine.

64
Sage France

Tables et procdures systme Sage


Base de donnes Master _________________________________________ 69 Procdures stockes tendues _____________________________________ 69 Messages derreurs______________________________________________ 69 Bases Sage 100 __________________________________________________ 70 Structure des tables systmes Sage ____________________________ 72 Description de la table cbMessage __________________________________ 72

Mise jour___________________________________________________________ 72 Structure des champs de la table _________________________________________ 72 Mise jour___________________________________________________________ 73 Structure des champs de la table _________________________________________ 73 Mise jour___________________________________________________________ 74 Structure des champs de la table _________________________________________ 74 Mise jour___________________________________________________________ 74 Structure des champs de la table _________________________________________ 74 Mise jour___________________________________________________________ 75 Structure des champs de la table _________________________________________ 75 Structure des champs de la table _________________________________________ 75 Mise jour___________________________________________________________ 75 Structure des champs de la table _________________________________________ 76 Structure des champs de la table _________________________________________ 76 Structure des champs de la table _________________________________________ 76

Description de la table cbNotification ________________________________ 73

Description de la table cbRegFile ___________________________________ 74

Description de la table cbRegMessage _______________________________ 74

Description de la table cbRegUser __________________________________ 75

Description de la table cbSysTable __________________________________ 75 Description de la table cbUserSession _______________________________ 75

Description de la table cbSysLibre __________________________________ 76 Description de la table cbSysLink ___________________________________ 76 Procdures stockes_____________________________________________ 77 65
Sage France

Tables et procdures systme Sage


CB_Connect ____________________________________________________77

Paramtres en Entre __________________________________________________77

CB_Disconnect __________________________________________________77 CB_IsFileLock___________________________________________________77


Paramtres en Entre __________________________________________________77 Paramtres en Sortie___________________________________________________78 Paramtres en Entre __________________________________________________78 Paramtres en Sortie___________________________________________________78 Paramtres en Entre __________________________________________________78 Paramtres en Sortie___________________________________________________78 Paramtres en Entre __________________________________________________79 Paramtres en Sortie___________________________________________________79 Paramtres en Entre __________________________________________________79 Paramtres en Sortie___________________________________________________79 Paramtres en Entre __________________________________________________80 Paramtres en Entre __________________________________________________80

CB_IsRecordLock ________________________________________________78

CB_IsVracLock __________________________________________________78

CB_LockFile ____________________________________________________79

CB_LockRecord _________________________________________________79

CB_LockVrac ___________________________________________________80 CB_Notify ______________________________________________________80 CB_PurgeLock __________________________________________________80 CB_PurgeMessage _______________________________________________80 CB_PurgeNotification _____________________________________________81 CB_PurgeRegFile ________________________________________________81 CB_PurgeRegMessage ___________________________________________81 CB_PurgeRegUser _______________________________________________81 CB_PurgeUserSession ____________________________________________82 CB_RegisterFile _________________________________________________82

Paramtres en Entre __________________________________________________82

CB_RegisterMessage _____________________________________________82 CB_RegisterUser ________________________________________________82 CB_SendMessage _______________________________________________83

66
Sage France

Paramtres en Entre __________________________________________________83

CB_UnLockFile __________________________________________________83

Tables et procdures systme Sage

Paramtres en Entre __________________________________________________ 83 Paramtres en Entre __________________________________________________ 83 Paramtres en Entre __________________________________________________ 84 Paramtres en Entre __________________________________________________ 84

CB_UnLockRecord ______________________________________________ 83 CB_UnLockVrac ________________________________________________ 84 CB_UnRegisterFile ______________________________________________ 84 CB_UnRegisterMessage __________________________________________ 84 CB_UnRegisterUser _____________________________________________ 84

67
Sage France

Tables et procdures systme Sage

68
Sage France

Tables et procdures systme Sage

Base de donnes Master


Procdures stockes tendues A linstallation de la partie Serveur de la Ligne 100 pour SQL Server, on installe des procdures stockes tendues qui se trouvent dans la base Master. Les procdures stockes tendues suivantes utilisent la DLL : CBSQLXP.DLL. Cette DLL se trouve dans le dossier WINNT\SYSTEM32 de votre poste serveur. xp_CBLockFile xp_CBUnlockFile xp_CBLockRecord xp_CBUnLockRecord xp_CBLockVrac xp_CBIsFileLock xp_CBIsRecordLock xp_CBIsVracLock xp_CBPurgeLock

Messages derreurs Certains messages utiliss dans les applications Sage Ligne 100 pour SQL Server sont ajouts dans la liste des messages Microsoft SQL Server. Les messages d'erreurs Sage sont crits du numro 80000 jusquau numro 80011. Bien que cela soit peu probable, l'criture de ces messages pourrait effacer des messages dj existants autres que ceux de Microsoft SQL Server. EVITEZ donc dans vos dveloppements de crer des messages Microsoft SQL Server dans cette plage dadresse 80000 80011.

69
Sage France

Tables et procdures systme Sage

Bases Sage 100


Les bases de donnes SQL de la Ligne 100 utilisent des tables systmes internes. Elles servent entres autre pour la notification entre les applications (ajout , modification, suppression denregistrements), envoi de messages,. Ces tables sont utilises par les applications Ligne 100 non SQL, mais ne sont pas visibles, mme par Supporia ou le driver ODBC 100. Ces tables commencent toutes par cb et sont les suivantes : cbMessage cbNotification cbRegFile cbRegMessage cbRegUser cbSysTable cbUserSession cbSysLibre cbSysLink

Lajout, la modification ou la suppression de ces tables ou des verrous ne seffectue que par excution de procdures stockes, savoir :
70
Sage France

CB_Connect CB_Disconnect CB_IsFileLock CB_IsRecordLock CB_IsVracLock CB_LockFile CB_LockRecord CB_LockVrac CB_Notify CB_PurgeLock CB_PurgeMessage CB_PurgeNotification CB_PurgeRegFile CB_PurgeRegMessage

Tables et procdures systme Sage


CB_PurgeRegUser CB_PurgeUserSession CB_RegisterFile CB_RegisterMessage CB_RegisterUser CB_SendMessage CB_UnLockFile CB_UnLockRecord CB_UnLockVrac CB_UnRegisterFile CB_UnRegisterMessage CB_UnRegisterUser

71
Sage France

Tables et procdures systme Sage

Structure des tables systmes Sage


Vous trouverez ci-dessous la description de chaque table systme Sage. Description de la table cbMessage Contient les messages destination des applications.
Mise jour

Table mise jour par la procdure stocke : CB_SendMessage / CB_PurgeMessage


Structure des champs de la table Nom CbSession CbUser CbMessage CbModif Signification SPID du destinataire SPID de lexpditeur Texte du message envoy Compteur Type de donnes Smallint Smallint Varchar (255) Int Champ Identit Valeur initiale : 1 Incrment : 1 Domaine validit Valeur par dfaut

72
Sage France

Tables et procdures systme Sage


Description de la table cbNotification Contient les notifications destination des applications.
Mise jour

Table mise jour par les procdures stockes : CB_Notify / CB_SendMessage / CB_PurgeNotification
Structure des champs de la table Nom CbSession CbFile CbType Signification SPID du destinataire Nom du fichier Type de verrou Type de donnes Smallint Sysname Smallint 4 : ajout enregistrement 5 :modification enregistrement CbInMod contient alors la liste des index modifis 6 : suppression enregistrement 7 : ajout de tables paramtres 8 : modification de tables paramtres 9 : suppression de tables paramtres 12 : connexion dune application 13 : dconnexion dune application 14 : envoi dun message Domaine validit Valeur par dfaut

CbUser CbIndMod CbMarq CbModif

SPID de lexpditeur Marqueur enregistrement Compteur des notifications

Smallint Smallint Int Int Champ Identit Valeur initiale : 1 Incrment : 1

73
Sage France

Tables et procdures systme Sage


Description de la table cbRegFile Contient les SPID des applications dsirant tre notifies lors de la modification dune table spcifique (CbFile).
Mise jour

Table mise jour par les procdure stocke : CB_RegisterFile / CB_UnRegisterFile / CB_PurgeRegFile.
Structure des champs de la table Nom CbSession CbFile Signification SPID Nom du Fichier Type de donnes Smallint Sysname Domaine validit Valeur par dfaut

Description de la table cbRegMessage Contient les SPID des applications acceptant de recevoir des messages.
Mise jour

Table mise jour par la procdure stocke : CB_RegisterMessage / CB_UnRegisterMessage / CB_PurgeRegMessage.


Structure des champs de la table Nom CbSession Signification SPID Type de donnes Smallint Domaine validit Valeur par dfaut

74
Sage France

Tables et procdures systme Sage


Description de la table cbRegUser Contient les SPID des applications dsirant tre notifies lors de nouvelles connexions / dconnexions.
Mise jour

Table mise jour par la procdure stocke : CB_RegisterUser / CB_UnRegisterUser / CB_PurgeRegUser.


Structure des champs de la table Nom CbSession Signification SPID Type de donnes Smallint Domaine validit Valeur par dfaut

Description de la table cbSysTable Contient des informations sur les tables lockes (exclusif, partag, destruction, modification).
Structure des champs de la table Nom CB_CbaseVersio n CB_DescVersion CB_Creator CB_Type CB_Mono CB_Version CB_TrigVersion CB_Replication Signification Version CBASE Version Type de crateur Type Accs mono ou multi utilisateur Numro de version Cbase Numro de version des Triggers Type de donnes Int Int Int Int Int Int Int 0 ou 1 0 : multi utilisateurs 1 : mono utilisateur Domaine validit Valeur par dfaut

Numro de rplication, utilis dans Int E_Commerce

Description de la table cbUserSession Contient les SPID des applications connectes la base.
Mise jour

Table mise jour par la procdure stocke : CB_Connect / CB_Disconnect.


75
Sage France

Tables et procdures systme Sage


Structure des champs de la table Nom CbSession Signification SPID des sessions en cours Type de donnes Smallint Domaine validit Valeur par dfaut

Description de la table cbSysLibre Table des informations libres.


Structure des champs de la table Nom CB_File CB_Name CB_Pos CB_Type Signification Nom de la table Nom de la colonne Position de linformation libre Type dinformation libre Type de donnes Sysname Sysmane Smallint Smallint Type date : 3 Type Texte : 9 Type Montant : 20 Type valeur : 7 Type date longue : 14 Type Table : 22 Type date : 2 Type Texte : longueur du texte + 1 Type Montant : 8 Type valeur : 8 Type date longue : 4 Type Table : 22 Domaine validit Valeur par dfaut

CB_Len

Longueur de linformation libre Smallint (uniquement pour les chanes)

Description de la table cbSysLink Table des bases lies.


Structure des champs de la table Nom CB_Type CB_Path Signification Type de base Path du fichier li Type de donnes Char Varchar Domaine validit 4 caractres maximum 260 Valeur par dfaut

76
Sage France

Tables et procdures systme Sage

Procdures stockes
CB_Connect
Paramtres en Entre

CB_Type varchar(4) : Type de base

Le type de la base peut prendre une des valeurs suivantes : CPTA : Base comptable CIAL : Base Commerciale IMMO : Base Immobilisation TRES : Base Moyen de Paiement

Cette procdure doit tre excute louverture de lapplication. Elle effectue les oprations suivantes : CB_Disconnect Aucun argument nest requis. Cette procdure est excute la fermeture de lapplication. Elle effectue les oprations suivantes : CB_IsFileLock
Paramtres en Entre

Lance les CB_Purge* Envoie une notification de connexion aux SPID prsents dans cbRegUser Inscrit le SPID dans cbUserSession

Lance les CB_Purge* Envoie une notification de dconnexion aux SPID prsents dans cbRegUser

CbFile (sysname) : Nom du fichier (ex F_COMPTEG) CbType (smallint) : Type de verrou (0,1,2,3) 0 : Shared (partag)
77
Sage France

Tables et procdures systme Sage


1 : Exclusif 2 : Delete (suppression) 3 : Modification

Paramtres en Sortie

Retourne un message d'erreur si le fichier est verrouill

CB_IsFileLock @cbFile sysname, @cbType smallint, @lRes int OUTPUT Cette procdure vrifie si un fichier est verrouill. Elle est appele uniquement par les dclencheurs de table. CB_IsRecordLock
Paramtres en Entre

CbFile (sysname) : Nom du fichier (ex F_COMPTEG) CbMarq (int) : Marqueur de lenregistrement

Paramtres en Sortie

Retourne un message d'erreur si le fichier est verrouill

CB_IsFileLock @cbFile sysname, @cbType smallint, @lRes int OUTPUT Cette procdure vrifie si un enregistrement est verrouill. Elle est appele uniquement par les dclencheurs de table. CB_IsVracLock
Paramtres en Entre

CbFile (sysname) : Nom du fichier (ex P_DEVISE)

Paramtres en Sortie

Retourne un message d'erreur si le fichier est verrouill

CB_IsVracLock @cbFile sysname, @lRes int Cette procdure vrifie si une table paramtre est verrouille. Elle est appele uniquement par les dclencheurs de table.

78
Sage France

Tables et procdures systme Sage


CB_LockFile
Paramtres en Entre

CbFile (sysname) : Nom du fichier (ex F_COMPTEG) CbType (smallint) : Type de verrou (0,1,2,3) 0 : Shared (partag) 1 : Exclusive 2 : Delete (suppression) 3 : Modification

Paramtres en Sortie

Retourne un message d'erreur si le fichier est dj verrouill.

CB_LockFile @cbFile SysName, @cbType Smallint, @lRes int output Cette procdure permet de verrouiller une table gnrale (table F_*). CB_LockRecord
Paramtres en Entre

CbFile (sysname) : Nom du fichier (ex F_COMPTEG) CbType (smallint) : Type de verrou (3,4) 3 : Modification 4 : Read (lecture)

CbMarq (int) : Numro de lenregistrement verrouiller

Paramtres en Sortie

Retourne un message d'erreur si le fichier est verrouill.

CB_LockRecord @cbFile sysname, @cbType smallint, @cbMarq int, @lRes int output Cette procdure permet de verrouiller un enregistrement.

79
Sage France

Tables et procdures systme Sage


CB_LockVrac
Paramtres en Entre

CbFile (sysname) : Nom du fichier (ex P_DEVISE)

CB_LockVrac @cbFile sysname Cette procdure permet de verrouiller une table paramtre (table P_*). CB_Notify
Paramtres en Entre

CbFile (sysname) : Nom du fichier (ex F_COMPTEG) CbType (smallint) : type de notification (cf. table cbNotification) CbIndMod (smallint) : liste des index modifis si CbType=5 CbMarq (in) : marqueur enregistrement

CB_Notify @cbFile sysname, @cbType smallint, @cbIndMod smallint, @cbMarq int Cette procdure est utilise par une application pour prvenir les autres applications de la modification dune table, de sa connexion ou de lenvoi dun message. Pour plus de renseignements nous vous conseillons de vous rfrer au chapitre relatif aux notifications. CB_PurgeLock Aucun argument nest requis. CB_PurgeLock Suppression des verrous dun SPID donn. CB_PurgeMessage Aucun argument nest requis. CB_PurgeMessage Suppression des enregistrements de la table cbMessage pour
80
Sage France

cbSession = @@SPID et

Tables et procdures systme Sage


cbSession NOT IN (SELECT spid FROM master..sysprocesses)

CB_PurgeNotification Suppression des enregistrements de la table cbNotification pour CB_PurgeRegFile Aucun argument nest requis. CB_PurgeRegFile Suppression des enregistrements de la table cbRegFile pour cbSession = @@SPID et cbSession NOT IN (SELECT spid FROM master..sysprocesses) cbSession = @@SPID et cbSession NOT IN (SELECT spid FROM master..sysprocesses)

CB_PurgeRegMessage Aucun argument nest requis CB_PurgeRegMessage Suppression des enregistrements de la table cbRegMessage pour CB_PurgeRegUser Aucun argument nest requis CB_PurgeRegUser Suppression des enregistrements de la table cbRegUser pour cbSession = @@SPID et cbSession NOT IN (SELECT spid FROM master..sysprocesses)
81
Sage France

cbSession = @@SPID et cbSession NOT IN (SELECT spid FROM master..sysprocesses)

Tables et procdures systme Sage


CB_PurgeUserSession Aucun argument nest requis CB_PurgeUserSession Suppression des enregistrements de la table cbUserSession pour CB_RegisterFile
Paramtres en Entre

cbSession = @@SPID et cbSession NOT IN (SELECT spid FROM master..sysprocesses)

CbFile (sysname) : Nom du fichier (ex F_COMPTEG)

CB_RegisterFile @cbFile Ajout denregistrements dans la table cbRegFile. CB_RegisterMessage Aucun argument nest requis CB_RegisterMessage Ajout denregistrements dans la table cbRegMessage. CB_RegisterUser Aucun argument nest requis CB_RegisterUser Ajout denregistrements dans la table cbRegUser.

82
Sage France

Tables et procdures systme Sage


CB_SendMessage
Paramtres en Entre

CbUser (smallint) : SPID du destinataire CbMessage (varchar(255)) : texte du message

CB_SendMessage @cbUser smallint, @cbMessage varchar(255) Cette procdure permet denvoyer un message via lapplication (commande Fichier / Configuration systme et partage) vers une autre application. CB_UnLockFile
Paramtres en Entre

CbFile (sysname) : Nom du fichier (ex F_COMPTEG) CbType (smallint) : Type de verrou (0,1,2,3)

CB_UnLockFile @cbFile sysname, @cbType smallint Cette procdure permet de dverrouiller une table gnrale (table F_*). CB_UnLockRecord
Paramtres en Entre

CbFile (sysname) : Nom du fichier (ex F_COMPTEG) CbType (char(1)) : Type de verrou (M) CbMarq (in) : Numro de lenregistrement dverrouiller

CB_UnLockRecord @cbFile sysname, @cbType char(1), @cbMarq int Cette procdure permet de dverrouiller un enregistrement.

83
Sage France

Tables et procdures systme Sage


CB_UnLockVrac
Paramtres en Entre

CbFile (sysname) : Nom du fichier (ex P_DEVISE)

CB_UnLockRecord @cbFile sysname, @cbType char(1), @cbMarq int Cette procdure permet de dverrouiller une table paramtre (table P_*). CB_UnRegisterFile
Paramtres en Entre

CbFile (sysname) : Nom du fichier (ex F_COMPTEG

CB_UnRegisterFile @cbFile sysname Supprime des enregistrements dans les tables cbRegFile et cbNotification. CB_UnRegisterMessage Aucun argument nest requis CB_UnRegisterMessage Supprime des enregistrements dans les tables cbRegMessage et cbNotification. CB_UnRegisterUser Aucun argument nest requis CB_UnRegisterUser Supprime des enregistrements dans les tables cbRegUser et cbNotification.

84
Sage France

Procdures stockes, cls et Triggers


Procdures stockes Sage daccs aux donnes _______________ 87 Les dclencheurs (Triggers) _____________________________________ 88 Triggers CBase _________________________________________________ 88

TG_CBINS_XXX ______________________________________________________ 88 TG_CBUPD_XXX _____________________________________________________ 88 TG_CBDEL_XXX _____________________________________________________ 89

Triggers Applicatifs ______________________________________________ 89 Contraintes dintgrit et index__________________________________ 89

Cls Primaires et index _________________________________________________ 89 Contraintes CBase ____________________________________________________ 89 Contraintes Application _________________________________________________ 89

85
Sage France

Procdures stockes, cls et Triggers

86
Sage France

Procdures stockes, cls et Triggers

Procdures stockes Sage daccs aux donnes


Dans un objectif doptimisation des processus des applications de la Ligne 100 Sage, toutes les oprations de slection suivant des index ont t crites sous forme de procdures stockes. A chaque index de chaque table (XXX) correspondent 7 procdures stockes qui permettent, suivant les champs de lindex , de trouver : CB_EqGreaterXXX CB_EqLesserXXX CB_EqualXXX CB_GreaterXXX CB_LesserXXX CB_NextICTXXX CB_PrevXXX Accs lenregistrement en >= Accs lenregistrement en <= Accs lenregistrement en = Accs lenregistrement en > Accs lenregistrement en < Accs lenregistrement suivant (pour cette procdure seul le champ cbMarq de type compteur est pass en paramtre) Accs lenregistrement prcdent (pour cette procdure seul le champ cbMarq de type compteur est pass en paramtre)

Lordre de tri correspond lordre des champs de lindex. Ainsi si un index est compos des champs ch1, ch2 et ch3 lordre de tri seffectuera en premier sur le champ ch1 puis sur le champ ch2 et enfin sur le champ ch3. Vous trouverez ci-dessous un exemple de procdure daccs un enregistrement pour un accs en suprieur ou gal avec lindex ICT_CANUM de la table F_COMPTET compos des trois champs : N_Analytique (smallint) CA_Num (varchar) CT_Num (varchar)

Exemple CREATE PROCEDURE CB_EqGreaterICT_CANUM @N_Analytique smallint,@CA_Num varchar(13),@CT_Num varchar(17) AS SET NOCOUNT ON IF EXISTS(SELECT * FROM F_COMPTET WHERE N_Analytique = @N_Analytique AND CA_Num = @CA_Num AND CT_Num >= @CT_Num) SELECT TOP 1 * FROM F_COMPTET WHERE N_Analytique = @N_Analytique AND CA_Num = @CA_Num AND CT_Num >= @CT_Num ORDER BY N_Analytique, CA_Num, CT_Num, cbMarq ELSE
87
Sage France

Procdures stockes, cls et Triggers


IF EXISTS(SELECT * FROM F_COMPTET WHERE N_Analytique = @N_Analytique AND CA_Num > @CA_Num) SELECT TOP 1 * FROM F_COMPTET WHERE N_Analytique = @N_Analytique AND CA_Num > @CA_Num ORDER BY N_Analytique, CA_Num, CT_Num, cbMarq ELSE SELECT TOP 1 * FROM F_COMPTET WHERE N_Analytique > @N_Analytique ORDER BY N_Analytique, CA_Num, CT_Num, cbMarq

Les dclencheurs (Triggers)


A chaque table des bases Sage 100 correspond diffrents Triggers dont la liste est donne ci-dessous. Le XXX correspond au nom du fichier. Les Triggers sont des dclencheurs qui sexcutent chaque opration dcriture (ajout, modification ou suppression). Ils assurent la cohrence et lintgrit des bases SAGE. Si une contraintes dintgrit nest pas respecte, alors la ou les requtes seront annules (Rollback) et un message derreur sera renvoy votre application. Cependant tous les contrles de cohrence ne sont pas intgrs comme le fait le driver ODBC 100, tels que par exemple le domaine de validit de chaque champ. Triggers CBase
TG_CBINS_XXX

Cest un trigger dinsertion qui effectue les oprations suivantes : Test des locks du fichier et mise jour des champs calculs CBase, Allocation des champs de type compteur sils sont gaux 0 ou null

TG_CBUPD_XXX

Cest un trigger en modification qui effectue les oprations suivantes.


88
Sage France

Test si lenregistrement et le fichiers sont locks, Mise jour des champs calculs Cbase, Test des champs modifis pour les champs faisant parti dun index compteur ou non modifiable, Affectation du champ cbModification.

Procdures stockes, cls et Triggers


TG_CBDEL_XXX

Cest un trigger en suppression qui effectue les oprations suivantes. Test si lenregistrement et le fichier sont locks.

Triggers Applicatifs Les tests de cohrence et dintgrit propres chaque application Ligne 100 sont appels Triggers applicatifs dont voici la liste : TG_INS_XXX (trigger dinsertion), TG_DEL_XXX (trigger en suppression), TG_UPD_XXX (trigger dinsertion).

Contraintes dintgrit et index


Lintgrit et la cohrence des bases Sage 100 est dabord assure par les Triggers que nous avons vus ci-dessus. Cependant grer les relations entre les tables en Transact SQL dans les triggers est pnalisant en performance. Pour cela, chaque table sont associes des contraintes de cls primaires et trangres.
Cls Primaires et index

Pour chaque table XXX (ex F_ARTICLE) est associe Une cl primaire sur le champ cbMarq : PK_CBMARQ_XXX Un index par index CBase avec le nom de lindex CBase et cbMarq en dernire position.

Contraintes CBase

Une contrainte unique par index unique ou compteur : UK_XXX (avec XXX = nom de lindex) Contrainte Not Null pour les champs NotNull
Contraintes Application

Contrainte unique UKA_XXX_YYY (avec XXX=nom du fichier, YYY= nom du champ contrainte) Contrainte de cl trangre FKA_XXX_YYY (avec XXX = nom du fichier, YYY= nom du champ contrainte)

89
Sage France

Procdures stockes, cls et Triggers


Exemple FKA_F_DOCLIGNE_AR_REF : contrainte cl trangre entre F_DOCLIGNE et F_ARTICLE sur le champ AR_REF

90
Sage France

Mcanismes de notification
Principes gnraux de notification ________________________ 93
Exemple dutilisation des notifications __________________________ 94 Envoi de message_______________________________________________ 94 Modification de table _____________________________________________ 96

91
Sage France

Mcanismes de notification

92
Sage France

Mcanismes de notification

Principes gnraux de notification


Lutilisation des applications Sage en accs Client/Serveur ncessite la connaissance instantane de tout changement de certaines activits relatives la base de donnes, qui sont : Modification dune table, Connexion / Dconnexion dune application Ligne 100, Prsence dun message leur attention.

Pour ce faire, toute les 5 secondes, chaque application Sage interroge la table cbNotification pour dterminer les vnements qui lui sont envoys par les autres applications. Chaque application de la Ligne 100, connecte la base, peut, si elle le dsire, recevoir des notifications. Pour ce faire chaque application devra sinscrire dans les tables suivantes : cbRegFile si elle dsire tre notifie de la modification dune table prcise, cbRegUser si elle dsire tre notifie de la connexion / dconnexion dune application Ligne 100, cbRegMessage si elle dsire pouvoir recevoir des messages

par lintermdiaire des procdures stockes suivantes : CB_RegisterFile, CB_PurgeRegUser, CB_RegisterMessage.

Pour annuler ces demandes, lapplication pourra utiliser lune des procdures stockes suivantes : CB_UnRegisterFile, CB_UnPurgeRegUser, CB_UnRegisterMessage.

Les notifications sont crites dans la table cbNotification par la fonction CB_Notify. Les messages sont crits dans la table cbMessage par la procdure stocke CB_SendMessage. A chaque application accdant une base de donnes correspond un SPID (ID de processus serveur du processus utilisateur en cours) unique attribu par Microsoft SQL Server qui est utilis dans les diffrentes tables et procdure stockes.

93
Sage France

Mcanismes de notification

Exemple dutilisation des notifications


Envoi de message Lexemple suivant prsente lenvoi dun message dune application Comptabilit 100 vers une application Gestion Commerciale 100 :

94
Sage France

Mcanismes de notification

(1) La comptabilit essaie denvoyer un message la gestion commerciale (SPID=9) par la commande : CB_SendMessage 9, message de test Cette procdure vrifie si la gestion commerciale accepte les messages en vrifiant la prsence du SPID=9 dans la table cbRegMessage sinon la commande sarrte. La procdure crit ensuite le message dans la table cbMessage, puis crit une notification de prsence de message pour le SPID=9 dans la table cbNotification. (2) Au maximum 5 secondes plus tard la gestion commerciale interroge la table cbNotification et trouve une notification de message par la requte : SELECT TOP 1 * FROM cbNotification WHERE cbSession = @@SPID La notification est alors dtruite par la requte suivante : DELETE FROM cbNotification WHERE cbModif = 28 (3) La gestion commerciale interroge la table cbMessage et trouve le message envoy par la comptabilit par la requte : SELECT TOP 1 * FROM cbMessage WHERE cbSession = @@SPID Le message est alors dtruit par la requte suivante : DELETE FROM cbMessage WHERE cbModif = 6

95
Sage France

Mcanismes de notification
Modification de table

Dans cet exemple trois programmes Comptabilit 100 visualisent simultanment les comptes tiers. La Comptabilit 100 de SPID gale 13 modifie lintitul dun compte tiers.

96
Sage France

Mcanismes de notification
Lexemple suivant prsente donc lenvoie de notifications de modification de table de la Comptabilit 100 (SPID=13) vers les deux autres Comptabilits 100 (SPID=9 et SPID=12) :

(1) La comptabilit (SPID=13) essaie denvoyer une notification de modification de table par la procdure : CB_Notify F_COMPTET, 5, 0, 5 Cette procdure recherche dans la table cbRegFile les SPID des autres applications dsirant tre notifies de modification de la table des comptes tiers. Elles trouves donc les SPID 9 et 12 et leur envoie une notification de modification de table dans la table cbNotification (2) Au maximum 5 secondes plus tard la Comptabilit 100 de SPID=9 interroge la table des notifications par la requte : SELECT TOP 1 * FROM cbNotification WHERE cbSession = @@SPID La notification est alors dtruite par la requte suivante : DELETE FROM cbNotification WHERE cbModif = 43 Lapplication procde alors au rafrachissement de sa fentre de visualisation des comptes tiers (3) Idem (2) pour la Comptabilit 100 de SPID=12

97
Sage France

Mcanismes de notification

98
Sage France

Utilisation des verrous


Diffrents types de verrous _____________________________________ 101 Lock en shared ________________________________________________ Lock en exclusif________________________________________________ Lock en destruction _____________________________________________ Lock en modification ____________________________________________ 101 101 101 101

Les verrous des fichiers et des enregistrements _______________ 102 Locks des fichiers ______________________________________________ 102

Ajout dun lock fichier _________________________________________________ 102 Suppression dun lock fichier ___________________________________________ 102 Ajout dun lock enregistrement __________________________________________ 102 Suppression dun lock enregistrement ____________________________________ 102 Insertion ___________________________________________________________ 103 Modification _________________________________________________________ 103 Suppression ________________________________________________________ 103 Listes (Locks en suppression)___________________________________________ 104 Insertion ou modification _______________________________________________ 104

Locks des enregistrements _______________________________________ 102

Fonctionnement de ces locks _____________________________________ 103

Gestion des locks dans les applications 100 __________________________ 104

Supprimer tous les verrous suite un plantage dapplication __________ 105

99
Sage France

Utilisation des verrous

100
Sage France

Utilisation des verrous


Les applications Ligne 100 utilisent des mcanismes de verrouillage propritaires ( Locks rseaux ) avec des locks de type fichier et enregistrements. Ces locks dans cette version Microsoft SQL Server sont grs via des procdures stockes (CB_LockFile, CB_UnlockFile, CB_LockRecord, et CB_UnLockRecord). Les diffrents types de Locks sont dcrits ci-dessous.

Diffrents types de verrous


Lock en shared Ce lock est un lock partageable, il permet aux autres de lire mais leur interdit toute modification en criture (ajout, suppression, modifications) . Sil y a dj un lock en exclusif, il y a attente. Lock en exclusif Ce lock est un lock exclusif, il interdit aux autres utilisateurs toutes actions. Sil y a dj un lock en Shared , il y a attente. Lock en destruction Ce lock interdit aux autres utilisateurs de faire des suppressions. Lock en modification Ce lock interdit toute modification. Il est interdit sil y a dj un lock en modification.

101
Sage France

Utilisation des verrous

Les verrous des fichiers et des enregistrements


Les locks dcrits ci-dessus sont utiliss pour locker les fichiers et les enregistrements. Ces locks (destruction et modification) sont utiliss frquemment dans les applications Sage100 afin de grer les accs concurrents en accs client serveur. Les procdures stockes indiques ci-dessous sont dcrites dans le chapitre consacr aux procdures stockes. IMPORTANT Les applications Ligne 100 pour Microsoft SQL Server ne lockent plus en exclusif ou en shared, seuls les locks en modification et destruction sont conservs. La procdure CBLockFile gre tout de mme ces 2 locks pour tous les dveloppements externes. Locks des fichiers
Ajout dun lock fichier

Pour locker un fichier utiliser la procdure stocke : CB_LockFile.


Suppression dun lock fichier

Pour supprimer un lock dans un fichier, utilisez la procdure stocke : CB_UnLockFile Locks des enregistrements
Ajout dun lock enregistrement

Pour locker un enregistrement dun fichier, utilisez la procdure stocke : CB_LockRecord


Suppression dun lock enregistrement

Pour supprimer un lock dun enregistrement, utilisez la procdure stocke : CB_UnLockRecord

102
Sage France

Utilisation des verrous


Fonctionnement de ces locks Comme dcrit ci-dessus, vous pouvez locker des enregistrements dun fichier ou tout le fichier. En accs client serveur ces locks ont des implications au niveau fonctionnel dans les applications Ligne 100, lors de linsertion ,la modification ou la suppression denregistrements.
Insertion

Si le fichier est lock en Exclusif alors message : Cet lment est en cours dutilisation. Si le fichier est lock en Shared alors message : Cet lment est en cours dutilisation. Si le fichier est lock en Modification alors message : Cet lment est en cours dutilisation
Modification

Si le fichier est lock en Modification alors Cet lment est en cours dutilisation Si le fichier est lock en Shared alors message : Cet lment est en cours dutilisation Si le fichier est lock en Exclusif alors message : Cet lment est en cours dutilisation Si lenregistrement est lock alors message : Cet lment est en cours dutilisation
Suppression

1 Si le fichier est lock en Modification alors message : Cet lment est en cours dutilisation Si le fichier est lock en Suppression alors message : Suppression impossible Si le fichier est lock en Shared alors message : Cet lment est en cours dutilisation

103
Sage France

Utilisation des verrous


Si le fichier est lock en Exclusif alors message : Cet lment est en cours dutilisation Si lenregistrement est lock alors message : Cet lment est en cours dutilisation Gestion des locks dans les applications 100
Listes (Locks en suppression)

Suppression impossible via un autre poste. Message : Suppression impossible


Insertion ou modification Table Matre

Sans Test de cohrence Insertion Avec Tests dunicit

Exemple Insertion dans le fichier F_ENUMSTAT Lock du fichier en Exclusif Test dexistence (Intitul) Insertion Unlock du Fichier en Exclusif Avec Tests dexistence (lien avec dautres fichiers)

Exemple Insertion dans le fichier F_COMPTEG avec le lien vers le fichier F_COMPTER Lock du fichier en Exclusif (F_COMPTEG) Lock en Shared du fichier li (F_COMPTER) Test dexistence (CR_Num de F_COMPTER) Insertion UnLock du fichier en Shared (F_COMPTER)
104
Sage France

Utilisation des verrous


UnLock du fichier en Exclusif (F_COMPTEG) Le lock en Shared est prsent uniquement pour viter que lon supprime le Compte Reporting entre le test dexistence et linsertion.
Table Fils

Exemple Insertion dans F_REGLEMENTT (Fichier FILS de F_COMPTET) Lock de lenregistrement du Fichier Matre en modification (F_COMPTET) Ensuite mme principe que pour le fichier Matre appliqu la table FILS (F_REGLEMENTT) Suppression du Lock de lenregistrement du fichier Matre en modification. Supprimer tous les verrous suite un plantage dapplication Si une application connecte une base est interrompue brutalement elle naura pas la possibilit de supprimer les verrous quelle aura pu poss. Il est donc ncessaire de supprimer manuellement ces verrous. Il faut : 1. 2. dconnecter toutes les applications connectes aux bases Sage, puis lancer la requte dbcc cbsqlxp (free) laide, par exemple, de lanalyseur de requtes.

Une fois ces deux procdures effectues vos applications pourront alors se connecter nouveau aux bases SQL.

105
Sage France

Utilisation des verrous

106
Sage France

Lecture et criture dans les tables Sage


Conseils _________________________________________________________ 109 Lecture ______________________________________________________ 109 Fonctions avances ____________________________________________ 109 Ecriture via le driver ODBC 11.01 __________________________________ 109

Optimisation et rorganisation de la base ______________ 113


Dveloppements externes et options SQL______________________ 114 Options ______________________________________________________ Ordres SQL relatifs aux index _____________________________________ Paramtrage de ces options ______________________________________ Procdure sp_dboption _______________________________________ Utilisation de la commande SET ___________________________________ 114 114 114 115 116

Plan de maintenance ____________________________________________ 117 Erreur dexcution du plan de maintenance __________________________ 117 Options requises pour les champs calculs __________________________ 117 Plan de maintenance____________________________________________ 118

Solution technique____________________________________________________ 118

Nouveaux plans de maintenance __________________________________ Modification plan de maintenance __________________________________ SCRIPT ______________________________________________________ Infomations complmentaires _____________________________________

118 120 122 123

107
Sage France

Lecture et criture dans les tables Sage

108
Sage France

Lecture et criture dans les tables Sage


Vous trouverez dans ce chapitre des conseils et exemples dcriture dans les bases de la Ligne 100 pour SQL Server. Ils vous seront utiles pour des dveloppements externes.

Conseils
Lecture Si vous souhaitez neffectuer que des oprations de lecture sur les bases Sage Ligne 100, vous pouvez accder directement aux donnes SQL Ligne 100 via le driver ODBC pour SQL Server ou via le provider OLEDB de SQL Server. Fonctions avances Le montant HT et le montant TTC sont dsormais stocks au niveau de chaque ligne de document en version 11 de la Ligne 100 pour SQL Server. Cela vous permet de raliser des tats statistiques de gestion commerciale et notamment calculer des chiffres daffaire, marge ou autres directement en mode natif SQL Server. La Gestion commerciale 100 version 11 pour SQL Server intgre certains tats en mode natif tels que ltat Statistiques clients en mode Rapide simplifi . Afin de connatre comment sont calculs ces indicateurs, utilisez le gnrateur de profils de SQL Server et crez une trace afin de visualiser la requte SQL gnre et ladapter suivant vos besoins. Ecriture via le driver ODBC 11.01 Lcriture dans les bases Sage 100 pour SQL Server est thoriquement possible via un outil de dveloppement externe. Cependant, il est fortement conseill dcrire via le driver ODBC 100 10.01 et non directement. Ce driver inclut en effet des contrles de cohrence et dintgrit qui ne sont pas inclus dans les triggers ou cls trangres SQL 100. De plus des oprations comme la mise jour des stocks en saisie de lignes de documents, sont gres par le driver, ce qui serait trs compliqu raliser par vous mme.

109
Sage France

Lecture et criture dans les tables Sage


Lcriture, via le driver ODBC 100 vous permettra donc de scuriser vos dveloppements externes, car sinon vous pourriez rencontrer des dysfonctionnements applicatifs, suite des problmes de cohrence des bases Sage.

110
Sage France

Administration et recommandations
Optimisation et rorganisation de la base ______________ 113
Dveloppements externes et options SQL______________________ 114 Options ______________________________________________________ Ordres SQL relatifs aux index _____________________________________ Paramtrage de ces options ______________________________________ Procdure sp_dboption _______________________________________ Utilisation de la commande SET ___________________________________ 114 114 114 115 116

Plan de maintenance ____________________________________________ 117 Erreur dexcution du plan de maintenance __________________________ 117 Options requises pour les champs calculs __________________________ 117 Plan de maintenance____________________________________________ 118

Solution technique____________________________________________________ 118

Nouveaux plans de maintenance __________________________________ Modification plan de maintenance __________________________________ SCRIPT ______________________________________________________ Infomations complmentaires _____________________________________

118 120 122 123

111
Sage France

Administration et recommandations

112
Sage France

Administration et recommandations

Optimisation et rorganisation de la base


Il est fortement conseill de lancer rgulirement le traitement Rorganisation de la base relationnelle du logiciel de Maintenance aprs avoir effectu des saisies dcriture. Ce traitement permet en effet de r -indexer les tables de votre base et de mettre jour les statistiques. SQL Server se sert en effet des statistiques collectes pour choisir le meilleur plan dexcution dune requte et de ce fait avoir des statistiques rgulirement jour vous permet davoir toujours des performances optimales. La frquence de rorganisation de la base est dfinir en fonction du volume dcritures saisies et des performances, mais en moyenne lancez ce traitement au moins 1 2 fois par semaine.

113
Sage France

Administration et recommandations

Dveloppements externes et options SQL


La Ligne 100 pour SQL Server versions 10.50 et 11.00 utilise des index sur des champs calculs. Ces champs calculs nexistaient pas dans les anciennes versions. Lutilisation de ces champs impose que certaines options soient actives, notamment pour la cration dindex, les commandes DBCC et les commandes de mise jour (insert, update, delete). Vous trouverez ci-dessous toutes les options et commandes ncessaires lutilisation des index sur les champs calculs de la Ligne 100. Options La cration et la manipulation d'index sur des colonnes calcules ncessite que les options SET ARITHABORT, CONCAT_NULL_YIELDS_NULL, QUOTED_IDENTIFIER, ANSI_NULLS, ANSI_PADDING et ANSI_WARNINGS soient actives (valeur ON). L'option NUMERIC_ROUNDABORT doit tre dsactive (OFF). Si l'une de ces options ne comporte pas la valeur requise, les ordres tels que INSERT, UPDATE, DELETE, CREATE INDEX sur les tables comportant des index sur des colonnes calcules chouent avec un message derreur tel que : INSERT a chou car les options suivantes comportent des paramtres incorrects : ARITHABORT, QUOTED_IDENTIFIER Ordres SQL relatifs aux index Les options cites ci-dessus sont ncessaires pour toutes manipulations dindex sur des colonnes calcules, savoir : CREATE INDEX, Oprations de mise jour : INSERT, DELETE, UPDATE, Ordres DBCC sur les index tels que DBCC DBREINDEX et DBCC INDEXDEFRAG,

Paramtrage de ces options SQL Server 2000 permet de paramtrer ces options laide de plusieurs commandes : Procdure sp_dboption : dfinition de paramtres pour la base de donnes en cours et valables pour toutes les sessions.

114
Sage France

Administration et recommandations
SET : dfinition doptions pour la session SQL en cours. Loption SET supplante les options de la base de donnes, dfinies via sp_dboption .

Procdure sp_dboption Syntaxe : sp_dboption base_de_donnes,paramtre,valeur. Valeurs renseigner : sp_dboption 'Nom_Base_de_donnes','arithabort','TRUE' go sp_dboption 'Nom_Base_de_donnes','concat null yields null','TRUE' go sp_dboption 'Nom_Base_de_donnes','quoted identifier','TRUE' go sp_dboption 'Nom_Base_de_donnes','ANSI nulls','TRUE' go sp_dboption 'Nom_Base_de_donnes','ANSI padding','TRUE' go sp_dboption 'Nom_Base_de_donnes','ANSI warnings','TRUE' go sp_dboption 'Nom_Base_de_donnes','numeric roundabort','FALSE' go Pour visualiser les valeurs des paramtres ci-dessus, il suffit de lancer pour chaque paramtre la commande : Sp_dboption nom_base_de_donnes,nom_du_paramtre Exemple sp_dboption 'BIJOU','arithabort' pour visualiser le paramtre arith abort de la base BIJOU. Cela retourne on si loption est active et off sinon.

115
Sage France

Administration et recommandations
Utilisation de la commande SET La commande SET permet de dfinir les options pour la session en cours. Cest le principe utilis pour la Ligne 100 chaque ouverture de base avec les paramtres dcrits ci-dessous. Pour toutes les oprations sur les index sur des champs calculs, il convient pour chaque session utilisateur de lancer les ordres suivants avant dexcuter toute opration sur ces index. SET ANSI_PADDING, ANSI_WARNINGS, CONCAT_NULL_YIELDS_NULL, ARITHABORT, QUOTED_IDENTIFIER, ANSI_NULLS on et SET NUMERIC_ROUNDABORT off Exemple 1 Cration de lindex IDX_ABREGE sur la table F_BANQUE SET ANSI_PADDING, ANSI_WARNINGS, CONCAT_NULL_YIELDS_NULL, ARITHABORT, QUOTED_IDENTIFIER, ANSI_NULLS on SET NUMERIC_ROUNDABORT off CREATE INDEX IDX_ABREGE ON F_BANQUE(cbBQ_Abrege) Ce principe est valable mme au niveau programmation, si vous utilisez par exemple les ADO (ActiveX Data Objects) pour insrer un lment dans une table comme dans lexemple suivant : Exemple 2 Insertion dans une table via les ADO en VB Dim oConn As New ADODB.Connection Dim sConnect As String Dim SQL As String sConnect="Provider='sqloledb';Data Source='DEVLIGNE100';" & _ "Initial Catalog='TEST2';Integrated Security='SSPI';" oConn.Open sConnect SQL = "set ANSI_PADDING,ANSI_WARNINGS,CONCAT_NULL_YIELDS_NULL,ARITHABORT, QUOTED_IDENTIFIER,ANSI_NULLS on " oConn.Execute SQL SQL = "set NUMERIC_ROUNDABORT off" oConn.Execute SQL SQL = "INSERT INTO " oConn.Execute SQL
116
Sage France

Administration et recommandations

Plan de maintenance
Ce chapitre vous donne toutes les informations ncessaires lutilisation du plan de maintenance avec les bases Sage ligne 100 V10.50 et V11, ainsi que des solutions techniques pour ces diffrents cas. Erreur dexcution du plan de maintenance Sous SQL Server 2000 (quel que soit le service pack), lexcution dun plan de maintenance sur les bases de donnes Sage SQL choue avec le message derreur suivant : Microsoft SQL-DMO (ODBC SQLState : 42000)] Erreur 1934 : [Microsoft][ODBC SQL Server Driver][SQL Server]DBCC a chou car les options SET suivantes comportent des paramtres incorrects : 'QUOTED_IDENTIFIER' Cette erreur est lie lutilisation dindex sur des champs calculs et se reproduit quelle que soit la base de donnes utilise (base Sage ou non Sage), mme si toutes les options sont bien positionnes. Options requises pour les champs calculs Certaines options doivent tre en effet valides avant toute manipulation sur des champs calculs. Les informations suivantes se trouvent dans la documentation en ligne de SQL Server 2000 sous la commande SET : Lors de la cration et de la manipulation d'index sur des colonnes calcules ou des vues indexes, les options SET ARITHABORT, CONCAT_NULL_YIELDS_NULL, QUOTED_IDENTIFIER, ANSI_NULLS, ANSI_PADDING et ANSI_WARNINGS doivent tre actives (valeur ON). L'option NUMERIC_ROUNDABORT doit tre dsactive (OFF). Si l'une de ces options ne comporte pas la valeur requise, les actions INSERT, UPDATE et DELETE sur les vues indexes ou les tables comportant des index dans des colonnes calcules chouent. SQL Server gnre une erreur et affiche la liste des options aux valeurs incorrectes. Par ailleurs, SQL Server traite les instructions SELECT sur ces tables ou vues indexes comme si les index sur les colonnes calcules ou sur les vues n'existaient pas . En outre certaines commandes DBCC sur les index chouent si ces options ne comportent pas la bonne valeur. Consultez la fiche suivante pour plus dinformations : http://support.microsoft.com/search/preview.aspx?scid=kb;en-us;Q301292

117
Sage France

Administration et recommandations
Plan de maintenance SQL Server 2000 permet de crer un plan de maintenance de faon simple et rapide via un assistant dans Entreprise Manager. Il permet entre autre de : Rorganiser les pages dindex et les donnes, Mise jour de statistiques, Vrifier lintgrit de la base de donnes, Sauvegarder la base de donnes dans le cadre du plan de maintenance.

Cet assistant cre alors plusieurs travaux ayant chacun une fonction spcifique. Cependant le plan de maintenance de SQL Server ne positionne pas les bonnes options cites cidessus lors de manipulations dindex sur des champs calculs, do lerreur pour tous les travaux manipulant des index. La sauvegarde fonctionne par contre normalement.
Solution technique

Afin de contourner ce problme, il faut : Modifier le plan de maintenance existant ou en crer un autre sil nexiste pas ; Gnrer manuellement, via un script SQL, les commandes lances par le plan de maintenance concernant les index.

Nouveaux plans de maintenance En cration dun nouveau plan de maintenance via Entreprise Manager (Gestion\Plan de maintenance de bases de donnes), procdez comme suit : Slectionnez votre base de donnes puis cliquez sur le bouton Suivant.

118
Sage France

Administration et recommandations

Dcochez toutes les options relatives loptimisation de la base de donnes puis cliquez sur le bouton Suivant.

Dcochez galement les options relatives lintgrit de la base de donnes puis cliquez sur le bouton Suivant.

119
Sage France

Administration et recommandations

Les crans suivants peuvent tre paramtrs selon lutilisateur et nont pas dincidence sur lerreur indique dans cette fiche. Seules les options ci-dessus provoquent lerreur si elles sont coches. Modification plan de maintenance Si vous avez dj un plan de maintenance existant qui provoque lerreur, procdez comme suit : Slectionnez votre plan de maintenance et ses proprits, Slectionnez longlet Optimisations et dcochez toutes les options :

120
Sage France

Administration et recommandations

Slectionnez longlet Intgrit et dcochez toutes les options.

121
Sage France

Administration et recommandations
SCRIPT Afin dexcuter les options non slectionnes dans le plan de maintenance (ci-dessus), vous trouverez ci-dessous un exemple de procdure permettant de gnrer les commandes les plus frquentes du plan de maintenance relatives aux index : Intgrit des donnes, Mise jour des statistiques, Rorganisation des pages dindex et de donnes.

Lancez ce script via lAnalyseur de requtes en remplaant Base_de_donnees par le nom de votre base de donnes USE Base_de_donnees set ANSI_PADDING,ANSI_WARNINGS,CONCAT_NULL_YIELDS_NULL,ARITHABORT, QUOTED_IDENTIFIER,ANSI_NULLS on set NUMERIC_ROUNDABORT off declare cTables CURSOR LOCAL FOR Select name FROM sysobjects where xtype='U' declare @sNameTable varchar(100) declare @FreeSpace int SET NOCOUNT ON SET @FreeSpace = 90 PRINT '---------------- RECONSTRUCTION DES INDEX et UPDATE STATISTICS' PRINT '---------------- DE TOUTES LES TABLES DE LA BASE' OPEN cTables FETCH NEXT FROM cTables INTO @sNameTable WHILE @@FETCH_STATUS = 0 BEGIN PRINT 'Table : ' + @sNameTable DBCC DBREINDEX (@sNameTable, '', @FreeSpace) EXEC ('UPDATE STATISTICS ' + @sNameTable + ' WITH SAMPLE 10 PERCENT')
122
Sage France

Administration et recommandations
FETCH NEXT FROM cTables INTO @sNameTable END CLOSE cTables DEALLOCATE cTables PRINT '---------------- VERIFICATION INTEGRITE DE LA BD ' DBCC CHECKDB (Base_de_donnees) Go Infomations complmentaires Pour plus dinformations concernant les commandes utilises dans ce script ainsi que leurs options, consultez la documentation en ligne de SQL Server 2000.

123
Sage France

Administration et recommandations

124
Sage France

Annexes
Annexe 1 : Equivalence des types des champs Sage / Microsoft SQL Server 2000 ______________________________ 127 Annexe 2 : Informations libres ___________________________ 128
Comptabilit 100 _______________________________________________ Gestion Commerciale 100 ________________________________________ Equivalence de types : Information libre Sage / Donnes Microsoft SQL Server 2000___________________________________________________ Ajout / Suppression dinformations libres sous Microsoft SQL Server 2000 __ 128 128 128 129

Principe ____________________________________________________________ 129 Cration d'un nouveau champ sous Microsoft SQL Server 2000 ________________ 130

125
Sage France

Annexes

126
Sage France

Annexe 1 : Equivalence des types des champs Sage / Microsoft SQL Server 2000

Annexe 1 : Equivalence des types des champs Sage / Microsoft SQL Server 2000
Sage Ligne 100 Chane Alphanumrique Numrique : Entier long Numrique : Entier Numrique : Rel double Texte Date Varchar Int Smallint Numric Text Smalldatetime Microsoft SQL Server 2000

127
Sage France

Annexes

Annexe 2 : Informations libres


Les informations libres sont des champs supplmentaires quil est possible de crer pour certaines tables par les applications de la Ligne 100 Sage. Comptabilit 100
Intitul Compte gnraux Section analytiques (comptes analytiques) Comptes tiers Ecritures comptables F_COMPTEG F_COMPTEA F_COMPTET F_ECRITUREC Table

Gestion Commerciale 100


Intitul Articles Enttes de document Lignes de documents F_ARTICLE F_DOCENTETE F_DOCLIGNE Table

Equivalence de types : Information libre Sage / Donnes Microsoft SQL Server 2000
Type information libre Sage Texte de longueur n Valeur Date Montant Table Date Longue Type de donnes Microsoft SQL Server 2000 Varchar Numeric Smalldatetime Numeric Varchar DateTime n 13 4 13 21 8 Taille

128
Sage France

Annexe 2 : Informations libres


Ajout / Suppression dinformations libres sous Microsoft SQL Server 2000
Principe

Afin que les informations libres que vous souhaitez crer soient visibles dans les produits Ligne 100, il faut crer des enregistrements dans 2 tables. Cration dans les tables indiques ci-dessus, Cration dans la table cbSysLibre.

Vous trouverez ci-dessous les diffrents champs renseigner dans les deux tables en prenant comme exemple la table F_ARTICLE dj compose de trois informations libres avec les diffrents cas possibles de type dinformations libres. Les quatre premires colonnes du tableau correspondent aux donnes de la table Table et les cinq autres aux donnes de la table cbSysLibre. Donc vous aurez crer pour chaque ligne du tableau, deux enregistrements.
Table Type info libre Sage

Cration de linformation libre Chp_Text de type Texte de longueur 13 caractres (position 4) Cration de linformation libre Chp_Montant de type Montant Cration de linformation libre Chp_Table de type Table Cration de linformation libre Chp_Date de type Date Cration de linformation libre Chp_DateLongue de type Date longue Cration de linformation libre Chp_Valeur de type Valeur
Type de donnes SQL 2000 Numeric Varchar SmallDateTime DateTime Numeric Taille 13 13 21 4 8 13 cbSyslibre. CB_File F_ARTICLE F_ARTICLE F_ARTICLE F_ARTICLE F_ARTICLE F_ARTICLE cbSyslibre. CB_Name Chp_Text Chp_Montant Chp_Table Chp_Date Chp_Valeur cbSyslibre. CB_Pos 4 5 6 7 9 cbSyslibre. CB_Type 9 20 22 3 14 7 8 22 2 4 8 cbSyslibre. CB_Len 14 (=13+1)

F_ARTICLE Texte (13 car) Varchar F_ARTICLE Montant F_ARTICLE Table F_ARTICLE Date F_ARTICLE Date longue F_ARTICLE Valeur

Chp_DateLongue 8

129
Sage France

Annexes
Cration d'un nouveau champ sous Microsoft SQL Server 2000

Pour ajouter une information libre sous Microsoft SQL Server 2000 vous pouvez utiliser Entreprise Manager. Utilisez alors la procdure suivante : Slectionnez la table concerne. Dans le menu Action slectionnez Modifier une table. Ajoutez une colonne cette table en respectant les types prsents dans lAnnexe 1 (pour supprimer une ligne , la slectionner et utiliser la touche SUPPR du clavier).

Vous pouvez galement ajouter une information libre par linstruction SQL ALTER TABLE : Exemple Cration ALTER TABLE F_ARTICLE ADD Couleur VARCHAR(20) NULL Suppression ALTER TABLE F_ARTICLE DROP COLUMN couleur IMPORTANT La cration dinformations libres manuellement via des requtes SQL avec des types qui ne sont pas ceux indiqus ci-dessus peut avoir un impact sur les applications Ligne 100. Vous ne pouvez pas crer des informations libres avec nimporte quel type de donnes ! Les informations libres doivent tre cres dans les 2 tables comme dcrit prcdemment, sinon celles ci ne seront pas visibles dans lapplication. Vous trouverez dans le tableau ci-dessous les consquences dune cration dinformations libres suivant le type de donnes SQL.

130
Sage France

Annexe 2 : Informations libres

Type SQL de linformation libre Binary Char (N) DateTime Decimal Float Image Int Money Nchar Ntext Numeric Nvarchar Real SmallDateTime SmallInt SmallMoney Text TimeStamp TinyInt UniqueIdentifie Varbinary VarChar(N)

Consquences dans les applications Ligne 100 Linformation libre est invisible dans lapplication Linformation libre est cre avec le type TEXTE et une longueur de N. Linformation libre est cre avec le type Date Linformation libre est cre avec le type Valeur Linformation libre est invisible dans lapplication Linformation libre est invisible dans lapplication Dans lapplication le Popup du Type est vide Linformation libre est invisible dans lapplication Linformation libre est invisible dans lapplication Linformation libre est invisible dans lapplication Linformation libre est cre avec le type Valeur Linformation libre est invisible dans lapplication Linformation libre est invisible dans lapplication Linformation libre est cre avec le type Date Dans lapplication le Popup du Type est vide Linformation libre est invisible dans lapplication Linformation libre est invisible dans lapplication Linformation libre est invisible dans lapplication Linformation libre est invisible dans lapplication Linformation libre est invisible dans lapplication Linformation libre est invisible dans lapplication Linformation libre est cre avec le type TEXTE et une longueur de N.

1. 2.

Une information libre insre sous Microsoft SQL Server 2000 ne sera visible partir de lapplication Sage que suite une dconnexion / connexion de lapplication. Pour tre visibles dans les applications Ligne 100 SQL, les informations libres doivent tre cres dans les tables F_COMPTEG, F_COMPTEA, F_COMPTET, F_ECRTUREC, F_ARTICLE, F_DOCENTETE, F_DOCLIGNE et galement dans la table cbSYsLibre.

131
Sage France

Annexes

132
Sage France

Fiche de suggestion
Vos commentaires et suggestions nous intressent pour amliorer la qualit et la facilit d'utilisation de nos manuels. Nous vous serions reconnaissants de bien vouloir remplir cette fiche d'apprciation et de nous la retourner. Nous vous en remercions par avance.

Socit Adresse Code postal / Ville Tlphone Tlcopie Utilisateur Fonction E-Mail

........................................................................................................... ........................................................................................................... ........................................................................................................... ........................................................................................................... ........................................................................................................... ........................................................................................................... ........................................................................................................... ...........................................................................................................

Mettez une note de 0 10 pour chacune des caractristiques suivantes : Format : Organisation : Prcision : ..................... ..................... ..................... Prsentation : Explications : Clart : ..................... ..................... .....................

Programme : Ligne 100 SQL Version : 11.00 Rfrence : DIV10SMA003

Sage France

Erreurs
Si vous avez trouv des erreurs dans ce manuel, merci de bien vouloir nous les signaler ci-dessous. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. .............................................................................................................................................

Suggestions
Toutes vos remarques nous aideront amliorer la qualit de nos manuels. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. Sage France - Dpartement Dveloppement - Service Rdaction 10, rue Fructidor 75834 PARIS CEDEX 17 Tl. 01 41 66 21 21 - Fax. 01 41 66 24 36 - Internet : www.sage.fr

Sage France