Se connecter avec Microsoft
S'identifier ou créer un compte.
Bonjour,
Sélectionnez un autre compte.
Vous avez plusieurs comptes
Choisissez le compte avec lequel vous voulez vous connecter.

RÉSUMÉ Cet article explique comment créer SQL tables pour les


solutions Microsoft Business - Programmes de bonne dextérité.


INFORMATIONS SUPPLÉMENTAIRES Utilisez les étapes de développement pour créer SQL tables résidant dans un programme tiers intégré de

dextérité. Ces étapes couvrent également l’octroi SQL autorisation d’accès à ces tables.


Remarque Cette méthode remplace la méthode amAutoGrant décrite dans le chapitre 41 du Guide de programmer de la dextérité, Volume 1.

1. Créez une procédure globale nommée
Démarrage si celle-ci n’existe pas dans votre programme tiers. Ce script s’exécute lorsque vous démarrez Great (Grande)) et est généralement l’endroit où des déclencheurs sont enregistrés.


2. Dans le script de démarrage, créez un déclencheur de procédure
sur Add_Successful_Login_Record procédure à l’aide du code suivant.

{Name: Startup}
local integer l_result;
l_result = Trigger_RegisterProcedure(script Add_Successful_Login_Record, TRIGGER_AFTER_ORIGINAL, script gp_create_tables);
if l_result <> SY_NOERR then
warning "The Add_Successful_Login_Record trigger is not registered.";
end if;



3. Le déclencheur enregistré créé à l’étape 2 appelle la procédure globale à gp_create_tables chaque fois que l’utilisateur se
connecte à Microsoft Dynamics GP. Cette procédure s’exécute lorsqu’une société Great Great Company est ouverte initialement lors du basculement de l’utilisateur ou de l’entreprise.


4. Créez la procédure globale nommée
gp_create_tables. Ce script crée les tables pour le programme tiers dans la base de données correcte SQL Server données. Elle crée également la table générée par les procédures storedp entre les tables (zDP) et accorde SQL autorisations d’accès à la table et aux procédures. Utilisez le code suivant.

{Name: gp_create_tables} 
local boolean result,l_result,OUT_Access;
{if logged in as sa, let them create the tables}
if 'SQLSaUser' of globals then
OUT_Access = true;
else
{This else statement will work only on 8.0. If logged in as a user other than sa,
but they have table access permissions, let them create the tables}
if syUserInRole('User ID' of globals, ROLE_SYSADMIN) or (syUserIsDBO ('User ID' of globals, 'Intercompany ID' of globals)
and syUserIsDBO ('User ID' of globals, SQL_SYSTEM_DBNAME)) then
OUT_Access = true;
end if;
end if;

if 'SQL Server' of globals > 0 and OUT_Access then
{enable table creation mode}
result = Table_SetCreateMode(true);
{Do not display any table errors to the user.}
result = Table_DisableErrorChecks(true);
{accessing the table creates it, list all your tables here, make sure to close the tables when done}
get first table GPSetup; {Purchasing series table}
close table GPSetup;
get first table GPSetup2; {System series table}
close table GPSetup2; {now set permissions, call once for the table and once for the stored procs}
{GPSetup is a purchasing series table so that will be in the company dbo}
l_result = GrantAccess(physicalname(table GPSetup),false,"DYNGRP",'Intercompany ID' of globals)
of form 'SQL Maintenance';
l_result = GrantAccess(physicalname(table GPSetup),true,"DYNGRP",'Intercompany ID' of globals)
of form 'SQL Maintenance';
{GPSetup2 is a system series table so that will be in the DYNAMICS database}
l_result = GrantAccess(physicalname(table GPSetup2),false,"DYNGRP","DYNAMICS") of form 'SQL Maintenance';
l_result = GrantAccess(physicalname(table GPSetup2),true,"DYNGRP","DYNAMICS") of form 'SQL Maintenance';
{Turn off automatic table creation.}
result = Table_SetCreateMode(false);
{Turn table error reporting back on.}
result = Table_DisableErrorChecks(false);
end if;


5. Les tables et les procédures stockées générées seront créées dans les SQL Server et SQL autorisations seront accordées. Ce script s’exécutera uniquement pour les utilisateurs de SSA ou DYNSA et une fois les tables créées, il est normal de l’exécuter à nouveau.

Cet article était TechKnowknow Document ID:33429

Contenu TechKnow en ligne

Besoin d’aide ?

Vous voulez plus d’options ?

Explorez les avantages de l’abonnement, parcourez les cours de formation, découvrez comment sécuriser votre appareil, etc.

Les communautés vous permettent de poser des questions et d'y répondre, de donner vos commentaires et de bénéficier de l'avis d'experts aux connaissances approfondies.

Ces informations vous ont-elles été utiles ?

Dans quelle mesure êtes-vous satisfait(e) de la qualité de la langue ?
Qu’est-ce qui a affecté votre expérience ?
En cliquant sur Envoyer, vos commentaires seront utilisés pour améliorer les produits et services de Microsoft. Votre administrateur informatique sera en mesure de collecter ces données. Déclaration de confidentialité.

Nous vous remercions de vos commentaires.

×