Ich habe die Klasse AxaptaUserManager in der Methode currentUserId() bearbeitet.So geben Sie ein Array oder einen Container in der Klassenmethode zurück
Mein editierten Code:
public static str currentUserId()
{
str userSingle;
;
userSingle = 'azn03';
return userSingle;
}
I-Verfahren setzen die oben für Bereich in meiner Anfrage:
Exportfile for AOT version 1.0 or later
Formatversion: 1
***Element: QUE
; Microsoft Dynamics AX Query: ABU_HCMWorker03 unloaded
; --------------------------------------------------------------------------
VERSION 31
QUERY #ABU_HCMWorker03
PROPERTIES
Name #ABU_HCMWorker03
Version #29
NextUniqueId #1003
Origin #{DC53FD0D-7322-447E-8393-3FCA091A6CE1}
ENDPROPERTIES
METHODS
SOURCE #classDeclaration
#public class QueryRun extends ObjectRun
#{
#}
ENDSOURCE
ENDMETHODS
BLOCKS
BLOCK #HcmWorker
PROPERTIES
Name #HcmWorker_1
Table #HcmWorker
UniqueId #1000
FetchMode #1:1
ENDPROPERTIES
FIELDLIST
PROPERTIES
Dynamic #Unselected
ENDPROPERTIES
ENDFIELDLIST
SORTING
ENDSORTING
LINES
ENDLINES
BLOCKS
BLOCK #DirPerson
PROPERTIES
Name #DirPerson_1
Table #DirPerson
UniqueId #1001
FetchMode #1:1
Relations #Yes
ENDPROPERTIES
FIELDLIST
PROPERTIES
ENDPROPERTIES
ENDFIELDLIST
SORTING
ENDSORTING
LINES
ENDLINES
BLOCKS
BLOCK #DirPersonUser
PROPERTIES
Name #DirPersonUser_1
Table #DirPersonUser
UniqueId #1002
FetchMode #1:1
Relations #Yes
ENDPROPERTIES
FIELDLIST
PROPERTIES
Dynamic #Unselected
ENDPROPERTIES
ENDFIELDLIST
SORTING
ENDSORTING
LINES
LINE #User
PROPERTIES
Name #User
Table #DirPersonUser
Field #User
Value #(currentUserId())
ENDPROPERTIES
ENDLINES
BLOCKS
ENDBLOCKS
ASSOCIATIONS
ASSOCIATION
FOREIGNKEYRELATION #DirPerson
ENDASSOCIATIONS
ENDBLOCK
ENDBLOCKS
ASSOCIATIONS
ASSOCIATION
FOREIGNKEYRELATION #DirPerson
ENDASSOCIATIONS
ENDBLOCK
ENDBLOCKS
GROUPBY
ENDGROUPBY
HAVING
ENDHAVING
ORDERBY
ENDORDERBY
ENDBLOCK
ENDBLOCKS
DEPENDENTS
ENDDEPENDENTS
COMPOSITEQUERIES
ENDCOMPOSITEQUERIES
ENDQUERY
***Element: END
Dann erstellen i Politik, die Abfrage und die Rolle verbinden:
Last, ich füge einen Benutzer 'TradeSalesRepresentative' hinzu.
Das Ergebnis ist nicht wie erwartet, in der Form SalesTable zeigt alle Kundenaufträge von allen Verkäufern. Mein Zweck ist Filterauftrag im SalesTable-Formular. Ist irgendetwas in meinem Schritt falsch?
Vielleicht können Sie die Codeänderungen vermeiden, um Ihre Tests durchzuführen, und den Befehl [runas.exe] (http://axandhellisfunaferall.blogspot.com.es/2012/07/command-line-runas-with-ax) verwenden. html). Das [Security Development Tool] (https://technet.microsoft.com/en-us/library/hh859729.aspx) ist auch eine gute Möglichkeit, Ihre Sicherheitsänderungen zu testen. –
Ich weiß nicht, wie man Security Development Tools benutzt. Der Befehl runas.exe führte ebenfalls zu unerwarteten Ergebnissen. – Setiaji