Sage100
Dans cet article, qui utilise la société Bijou comme exemple, vous lirez comment :
autoriser la connexion d'un nouvel utilisateur ;
dupliquer une base de données ;
sauvegarder une base de données ;
gérer la perte d'un mot de passe d'accès à une société.
Supposons que :
SRV-SAGE\Sage100 soit l'adresse de votre instance SQL (ici une instance nommée SAGE100 installée sur un serveur nommé SRV-SAGE ;
une base de données nommée TEST existe sur ce serveur ;
[CBASE]
ServeurSQL=SRV-SAGE\SAGE100
Createur = MA30
Type = CPTA
L'information "Createur" apparait dans la colonne "cbCreateur" de la table "dbo.F_PROTECTIONCPTA"
Il faut, enfin, enregistrer ce fichier sous le nom "test.mae".
Pour accéder à cette société avec le module "gestion-commerciale", la valeur de "Createur" sera "COLU", le type sera "CIAL" et le fichier se nommera "test.gcm"
1. Autoriser la connexion d'un utilisateur
Pour qu'un utilisateur ou un groupe d'utilisateurs puisse se connecter à la société Bijou, ce dernier doit être listé sous l'onglet "connexions" visible dans l'explorateur d'objets de "Microsoft SQL Server Management Studio".
Comme illustré en partie 1 de l'image ci-dessous, un clic-droit sur cet onglet permet de créer une "nouvelle connexion" en complétant la boite de dialogue affichée dans sa partie 2.
Il faut ensuite (cf partie 3) ouvrir la boite de dialogue "mappage de l'utilisateur" pour cocher l'ensemble des sociétés auxquelles l'utilisateur ou le groupe aura accès.
Toujours dans l'explorateur d'objets de "Microsoft SQL Server Management Studio", et comme illustré dans l'image ci-contre, un clic doit sur une des bases de données (de sociétés) listée affichera grâce à l'item "propriétés" la boite de dialogue permettant de modifier les propriétés de la base de données. L'item "Autorisations" montre les utilisateurs ou groupes d'utilisateurs, ainsi que leurs droits d'accès sur cette société. Il permet aussi d'ajouter ou de supprimer des comptes et d'en modifier les droits d'accès.
2. Dupliquer une Base de Données
Pour dupliquer la BD "Bijou" de votre installation Sage (Sage100 lorsque j'écris cette note), vous devez lancer l'utilitaire de maintenance "maint.exe" qui est systématiquement installé dans le dossier "Sage" lors de l'installation de SAGE.
Dans l'outil de maintenance, ouvrez le fichier "bijou.mae" , puis suivez les étapes illustrées dans l'image ci-dessous :
Dans l'item "maintenance du menu", choisissez "Recopier les données ;
Dans la fenêtre "assistant maintenance" qui s'est ouverte, cliquez sur "Suivant" ;
Puis sur "Parcourir" pour indiquer le dossier et le nom choisi pour la copie, par exemple "bijou2 ;
Cliquez sur "Fin" pour lancer la copie de la BD Bijou et ...
..la génération des 4 fichiers comptabilité (5a) ; gestion-commerciale (5b) ; immobilisation et trésorerie.
3. Sauvegarder une Base de Données
Ouvrir le fichier de la société dans le module "comptabilité". Dans l'item "fichier" du menu, cliquer sur sauvegarder.
Par défaut la sauvegarde se trouve dans "C:\Program Files\Microsoft SQL Server\MSSQL11.SAGE100\MSSQL\Backup"
4. Mot de passe perdu
Les comptes utilisateurs d'une société sont stockés dans la base de données associée à la société sur le serveur SQL dans la table
F_PROTECTIONCPTA pour le module comptabilité ;
F_PROTECTIONCIAL pour le module gestion-commerciale...
Par exemple, on utilisera F_PTROTECTIONCIAL pour le module gestion-commerciale...
Les scripts SQL présentés seront à exécuter dans l'applicatif "Microsoft SQL management studio" qui est normalement installé lors de la mise en place du serveur SQL nécessaire à SAGE 100.
Le code SQL ci-après,
SELECT *
FROM [dbo].[F_PROTECTIONCPTA]
GO
permet de lire le contenu de cette table. On y observe (cf image ci-dessous) que les comptes des utilisateurs figurent dans la colonne PROT_User. A chaque compte est associé un GUID (Globally Unique IDentifier ou identifiant unique) en colonne PROT_Guid et un mot de passe crypté en colonne PROT_Hash.
Puisque nous n'avons pas accès à l'algorithme de cryptage, la génération d'un nouveau mot de passe est impossible.
L'astuce que je présente ici, me permet de récupérer uniquement le compte "administrateur" puis en me connectant avec ce compte administrateur sur la société, de réinitialiser les autres mots de passe.
L'exécution du code SQL ci-dessous remplace le GUI et le hashcode du compte "administarateur". Lorsque nous ouvrirons la société TEST dans le module comptabilité, nous pourrons nous connecter sans mot de passe avec le compte administrateur. TEST est bien sûr à remplacer par le nom de votre société tel qu'il apparait dans l'explorateur d'objets de "Microsoft SQL management studio".
Vous pouvez copier ce code à partir de l'onglet figurant au bas de cet article.
USE [TEST]
GO
UPDATE [dbo].[F_PROTECTIONCPTA]
SET PROT_Hash = 0xB5EF72BA0E63C8419198EC651C7E1F153CC047B7F5627A4388B9343ED59EBAF8, PROT_Guid = '0B5D4B64-8D2A-4F26-96F9-E5FECB72DDE2'
WHERE cbMarq =1
GO
SELECT *
FROM [dbo].[F_PROTECTIONCPTA]
GO
USE [TEST]
GO
UPDATE [dbo].[F_PROTECTIONCPTA]
SET PROT_Hash = 0xB5EF72BA0E63C8419198EC651C7E1F153CC047B7F5627A4388B9343ED59EBAF8, PROT_Guid = '0B5D4B64-8D2A-4F26-96F9-E5FECB72DDE2'
WHERE cbMarq =1
GO
SELECT * FROM [dbo].[F_PROTECTIONCPTA]
GO