Nóta
Aðgangur að þessari síðu krefst heimildar. Þú getur prófað aðskrá þig inn eða breyta skráasöfnum.
Aðgangur að þessari síðu krefst heimildar. Þú getur prófað að breyta skráasöfnum.
Athugasemd
Samfélagsáhugahópar hafa nú flust frá Yammer yfir í Microsoft Viva Engage. Til að ganga í Viva Engage samfélag og taka þátt í nýjustu umræðunum, fylltu út eyðublaðið Request access to Finance and Operations Viva Engage Community og veldu það samfélag sem þú vilt ganga í.
Þessi grein lýsir keyrsluföllum lotunnar.
curExt
Sækir viðbótina sem núverandi fyrirtæki notar.
str curExt()
Skilagildi
Framlengingin fyrir núverandi fyrirtæki.
Dæmi
static void curExtExample(Args _arg)
{
str s;
// Sets s to the extension of the current company.
s = curExt();
print "Current extension is " + s;
}
curUserId
Sækir ótölulegt auðkenni sem táknar núverandi notanda.
str curUserId()
Skilagildi
Ótölulegt auðkenni sem táknar núverandi notanda.
Dæmi
static void curUserIdExample(Args _arg)
{
str s;
s = curUserId();
print "Current user ID is " + s;
}
funcNafn
Sækir streng sem inniheldur samhengi núverandi aðgerðar.
str funcName()
Skilagildi
Heiti aðferðarinnar sem keyrir þessa aðferð.
Athugasemdir
Ef keyrslan er nú innan meðlims töflu eða klasa er heiti aðferðarinnar forskeyti með nafni þeirrar töflu eða klasa.
Dæmi
static void funcNameExample(Args _arg)
{
print "Current function context is " + funcName();
}
getCurrentPartition
Sækir stutt nafn núverandi skiptingar.
str getCurrentPartition()
Skilagildi
Stutt nafn núverandi skiptingar.
Athugasemdir
Hámarkslengd gagnaskiptingarheitisins sem skilað er átta stafir.
Dæmi
Eftirfarandi kóðadæmi sýnir köll til og úttak frá getCurrentPartition fallinu á X++ tungumálinu og tengdum aðgerðum eða aðferðum.
static public void Main(Args _args) // X++ method.
{
int64 iPartition;
str sPartition;
SelectableDataArea oSelectableDataArea; // System ExDT.
iPartition = getCurrentPartitionRecId();
sPartition = getcurrentpartition();
oSelectableDataArea = Global::getCompany( tableNum(BankAccountTable) );
Global::info( strFmt(
"getCurrentPartitionRecId =%1 , getCurrentPartition =%2 , getCompany =%3",
iPartition, sPartition, oSelectableDataArea) );
}
/**** Pasted from Infolog window:
Message_@SYS14327 (03:42:38 pm)
getCurrentPartitionRecId =5637144576 , getCurrentPartition =initial , getCompany =ceu
****/
getCurrentPartitionRecId
Sækir RecId reitinn fyrir núverandi skipting.
int64 getCurrentPartitionRecId()
Skilagildi
RecId reiturinn fyrir núverandi gagnaskiptingu.
Athugasemdir
Til að sjá dæmi um kóða sem reiðir sig á getCurrentPartitionRecId aðgerðina, sjá Hvernig á að: Hafa með síu fyrir skipting í Direct Transact-SQL.
Dæmi
Eftirfarandi dæmi um kóða sýnir köll í og úttak frá getCurrentPartitionRecId aðgerð X++ tungumálsins og tengdar aðgerðir eða aðferðir.
static public void Main(Args _args) // X++ method.
{
int64 iPartition;
str sPartition;
SelectableDataArea oSelectableDataArea; // System ExDT.
iPartition = getCurrentPartitionRecId();
sPartition = getcurrentpartition();
oSelectableDataArea = Global::getCompany( tableNum(BankAccountTable) );
Global::info( strFmt(
"getCurrentPartitionRecId =%1 , getCurrentPartition =%2 , getCompany =%3",
iPartition, sPartition, oSelectableDataArea) );
}
/**** Pasted from Infolog window:
Message_@SYS14327 (03:42:38 pm)
getCurrentPartitionRecId =5637144576 , getCurrentPartition =initial , getCompany =ceu
****/
getPrefix
Sækir núverandi keyrsluforskeyti eftir samfelld köll í setPrefix aðgerðina.
str getPrefix()
Skilagildi
Núverandi framkvæmdarforskeyti.
Athugasemdir
Forskeytabúnaðurinn gerir það einfaldara að skrifa nákvæm villuboð um viðskiptin sem forrit framkvæmir. Þar sem stigveldisskjár er búinn til í upplýsingaskránni getur verið auðveldara að ákvarða hvaðan hver villa kom.
Dæmi
static void getPrefixExample(Args _arg)
{
setPrefix("Prefix");
setPrefix("Another prefix");
print getPrefix();
}
sessionId
Sýnir lotunúmer yfirstandandi setu.
int sessionId()
Skilagildi
Tölulegt kenni núverandi lotu.
Athugasemdir
Úthlutaðu setunúmeri þegar þú ræsir viðskiptavininn og tengist Application Object Server (AOS). Hvert kall á þetta fall á líftíma viðskiptavinarins skilar sama heiltölugildi. Skilað gildi er samhæft við útvíkkaða gagnagerðina SessionID . Aðferðirnar inniheldur skila upplýsingum um einstakar notendalotur.
Dæmi
static void sessionIdExample(Args _arg)
{
int session;
session = sessionId();
print "This session ID is number " + int2Str(session);
}
prmIsDefault
Ákvarðar hvort tilgreind færibreyta fyrir núverandi aðferð hafi sjálfgefið gildi.
int prmIsDefault(anytype argument)
Færibreytur
| Færibreyta | Lýsing |
|---|---|
| Rifrildi | Færibreytan til að prófa. |
Skilagildi
1 ef sjálfgefið gildi færibreytunnar var notað; annars 0 (núll).
Dæmi
static void prmIsDefaultExample(Args _arg)
{
void fn(boolean b = true, int j = 42)
{
if (prmIsDefault(b) == 1)
{
print "First parameter is using the default value.";
}
else
{
print "First parameter is not using the default value.";
}
}
fn();
fn(false);
}
runAs
Gerir þeim sem hringir kleift að keyra X++ aðferð í öryggissamhengi annars notanda. Þessi aðgerð er oftast notuð við runuvinnslu.
container runAs(
str userId,
int classId,
str staticMethodName
[,
container params,
str company,
str language,
str partition
])
Færibreytur
| Færibreyta | Lýsing |
|---|---|
| notanda auðkenni | Notandinn til að herma eftir. |
| classId | Bekkurinn sem á að kalla fram í eftirlíkingarfundinum. |
| staticMethodName | Klasaaðferðin til að kalla fram í nýju notendasamhengi. |
| Breytur | Breyturnar til að fara í aðferðina; valfrjáls. |
| fyrirtæki | Fyrirtækið sem er valið fyrir eftirlíkingu lotu; valfrjáls. |
| tungumál | Tungumálið sem er valið fyrir fundinn sem hermt er eftir; valfrjáls. |
| skipting | Skiptingarlykillinn af þeirri gerð sem getCurrentPartition aðgerðin skilar; valfrjáls. |
Skilagildi
Ílát sem geymir skilagildi eða gildi aðferðarinnar sem runAs-fallið kallar, ef einhver gildi eru skiluð.
Athugasemdir
Þessi aðgerð gerir það mögulegt að keyra kóða sem annar notandi. Þessi geta er öryggisógn. Þess vegna keyrir þessi aðgerð undir Code Access Security. Köll í þessa aðgerð á þjóninum krefjast leyfis frá RunAsPermission klasanum. Sérhver notkun þessa forritunarviðmóts (API) ætti að vera ógnarlíkan. Ef öryggisveikleiki uppgötvast skaltu staðfesta inntak í þetta API. Aflúsarinn gæti hunsað brotpunkta sem eru staðsettir í aðferð sem runAs-fallið kallar. X++ kóði sem runAs-fallið keyrir verður að keyra sem Microsoft .NET Framework Common Intermediate Language (CIL). Ef CIL er ekki búin til fyrir markstöðugu aðferðina, gefur villuskilaboð til kynna að aðferðin finnist ekki. PartitionKey kerfisgerðin er nákvæm gerð skiptingarfæribreytunnar. PartitionKey er strengur sem hefur að hámarki átta stafi að lengd.
Dæmi
Eftirfarandi dæmi kallar á runDueDateEventsForUser aðferðina í EventJobDueDate klasanum. Kóðinn keyrir í öryggissamhengi notanda. Keyrðu þennan kóða með því að nota hann á aðferð í nýjum flokki.
server static public void Main(Args _args)
{
RunAsPermission perm;
UserId runAsUser;
SysUserInfo userInfo;
userInfo = SysUserInfo::find();
runAsUser = userInfo.Id;
perm = new RunAsPermission(runAsUser);
perm.assert();
runAs(runAsUser, classnum(EventJobDueDate), "runDueDateEventsForUser");
CodeAccessPermission::revertAssert();
}
setPrefix
Stillir forskeyti fyrir núverandi framkvæmdarumfang.
int setPrefix(str _prefix)
Færibreytur
| Færibreyta | Lýsing |
|---|---|
| _forskeyti | Forskeyti fyrir núverandi framkvæmdarumfang. |
Skilagildi
0 ef forskeytið er stillt rétt.
Athugasemdir
Notaðu getPrefix fallið til að fá fullkomið forskeyti fyrir keyrsluna. Þegar umfanginu lýkur endurstillist forskeytið sjálfkrafa á fyrra stig. Forskeytið gerir það auðveldara að skrifa nákvæm villuskilaboð um þær færslur sem forrit framkvæmir. Til dæmis kallar AA aðferðin á BB aðferðina og hver aðferð kallar á setPrefix aðgerðina. Skeyti sem BB aðferðin skrifar í Infolog birtast hreiðruð í stigveldi. Þegar BB-aðferðin lýkur og stjórnin snýr aftur til AA-aðferðarinnar , er forskeytið sem BB-aðferðin setti ekki tengt við næstu skilaboð.
Dæmi
static void setPrefixExample(Args _arg)
{
int i;
i = setPrefix("Prefix");
print i;
}