Conectați-vă cu Microsoft
Conectați-vă sau creați un cont
Salut,
Selectați un alt cont.
Aveți mai multe conturi
Alegeți contul cu care doriți să vă conectați.

REZUMAT Acest articol descrie cum să creați tabele SQL pentru microsoft Business Solutions - programe bazate pe Dexteritate foarte


bună și dexteritate.


MAI MULTE
INFORMAȚII Utilizațifollowingsteps pentru a crea SQL tabele care se află într-un program de integrare de la terți
scris în Dexteritate. De asemenea, acești pași de copertă SQL acorda permisiuni pentru tabelele respective.


Notă Această metodă înlocuiește metoda amAutoGrant descrisă în Capitolul 41 din Ghidul programatorului de dexteritate, Volumul 1.

1. Creați o procedură globală
numită Pornire, dacă nu există deja în programul de la terți. Acest script rulează atunci când porniți Great Plains și este de obicei locul unde sunt înregistrate triggerele.


2. În
scriptul De lansare în execuție, creați un declanșator de procedură Add_Successful_Login_Record procedură utilizând următorul cod.

{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. Triggerul înregistrat creat la pasul 2 va numi procedura globală gp_create_tables de câte ori
utilizatorul se conectează la Microsoft Dynamics GP. Această procedură este rulată atunci când o firmă din Great Plains este inițial deschisă sau atunci când utilizatorul sau firma este comutată.


4. Creați procedura globală denumită
gp_create_tables. Acest script va crea tabele pentru programul terț în baza de date corectă SQL Server date. De asemenea, vacrea tabelul generat ca surse stocate (procs zDP) și va acorda SQL permisiuni tabelului și procedurii. Utilizați următorul cod.

{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. Tabelele și procedurile stocate generate de tabel vor fi create în SQL Server permisiunile SQL vor fi acordate. Acest script va rula doar pentru utilizatorii SA sau DYNSA și, după ce sunt create tabelele, este în regulă să rulați din nou acest script.

Acest articol a fost TechKnowledge Document ID:33429

Conținut TechKnowledge

Aveți nevoie de ajutor suplimentar?

Doriți mai multe opțiuni?

Explorați avantajele abonamentului, navigați prin cursurile de instruire, aflați cum să vă securizați dispozitivul și multe altele.

Comunitățile vă ajută să adresați întrebări și să răspundeți la întrebări, să oferiți feedback și să primiți feedback de la experți cu cunoștințe bogate.

Au fost utile aceste informații?

Cât de mulțumit sunteți de calitatea limbajului?
Ce v-a afectat experiența?
Apăsând pe Trimitere, feedbackul dvs. va fi utilizat pentru a îmbunătăți produsele și serviciile Microsoft. Administratorul dvs. IT va avea posibilitatea să colecteze aceste date. Angajamentul de respectare a confidențialității.

Vă mulțumim pentru feedback!

×