Raport może wykorzystywać podane przez użytkownika aplikacji po kliknięciu w ikonę
argumenty (parametry). Wszystkie argumenty znajdują się w sekcji Arguments definicji raportu, zaś poszczególne argumenty opatrzone są sekcją Argument według następującego przykładu:
<Argument>
…
</Argument>
</Arguments>
Argument może zawierać następujące sekcje:
| Nazwa | Type |
| Opis | Typ argumentu. |
| Zawartość |
|
| Nazwa | Name |
| Opis | Nazwa argumentu wykorzystywana w definicji raportu. |
| Zawartość |
|
| Nazwa | VisibleName |
| Opis | Nazwa argumentu widoczna na wyświetlanym raporcie. |
| Zawartość |
|
| Nazwa | DefaultSql |
| Opis | Wartość parametru ustawiana domyślnie. Jeżeli wartość pozostanie pusta (ustawiona na <![CDATA[]]>) to wartość parametru w aplikacji ustawi się na ‚Brak wartości’ i konieczny będzie wybór tego parametru przed otwarciem raportu. |
| Zawartość |
|
| Nazwa | ListSql |
| Opis | Wartości parametru możliwe do wyboru. |
| Zawartość |
|
<![CDATA[
SELECT 0, 'Zamówień’
UNION ALL
SELECT 1, 'Ofert’
UNION ALL
SELECT 2, 'Faktur’
]]>
</ListSql>
| Nazwa | IsRequired |
| Opis | Znacznik czy dany argument ma być wymagany przy otwarciu raportu |
| Zawartość |
|
| Nazwa | CustomTypeName |
| Opis | Nazwa typu. Używane z typem raportu Custom. |
| Zawartość |
|
| Nazwa | AutocompleteSqlProc |
| Opis | Używane z typem raportu Autocomplete. Umożliwia automatyczną podpowiedź podczas uzupełniania pola. |
| Zawartość | Brak |
| Elementy podrzędne |
|
| Nazwa | AutocompleteSqlProc: Name |
| Opis | Nazwa procedury na bazie SQL zwracającej podpowiedzi. |
| Zawartość |
|
| Nazwa | AutocompleteSqlProc: Parameters |
| Opis | Znacznik parametrów, które przyjmuje procedura. |
| Zawartość | Brak |
| Elementy podrzędne |
|
| Nazwa | AutocompleteSqlProc: Parameters: ArgumentValueParameter |
| Opis | Identyfikator argumentu. |
| Parametry |
|
| Zawartość |
|
Argument typu List:
<Argument> <Type>List</Type> <Name>DocumentType</Name> <VisibleName>Licz dla</VisibleName> <DefaultSql> <![CDATA[ DECLARE @docTypeId INT SET @docTypeId = (SELECT COALESCE( ( SELECT TOP 1 CAST(ruav.ArgumentValue AS nvarchar(max)) FROM esm.ReportsUserArguments ruav WHERE ruav.UserName = @LoginName AND ruav.ReportFileName = @ReportFileName AND ruav.ArgumentName = 'DocumentType' ) , ( SELECT 1) )) SELECT * FROM ( SELECT 0 as Id, 'Zamówień' as Name UNION ALL SELECT 1, 'Ofert' UNION ALL SELECT 2, 'Faktur' ) p WHERE p.Id = @docTypeId ]]> </DefaultSql> <ListSql> <![CDATA[ SELECT 0, 'Zamówień' UNION ALL SELECT 1, 'Ofert' UNION ALL SELECT 2, 'Faktur' ]]> </ListSql> </Argument>
Powyższa definicja argumentu w aplikacji wygląda następująco:

Po kliknięciu w pole wartości, możliwy jest wybór wartości z listy:

Argument typu Data:
<Argument> <Type>Date</Type> <Name>DateFrom</Name> <VisibleName>Data początkowa</VisibleName> <DefaultSql> <![CDATA[ SELECT COALESCE( ( SELECT TOP 1 CAST(ruav.ArgumentValue AS DATETIME) FROM esm.ReportsUserArguments ruav WHERE ruav.UserName = @LoginName AND ruav.ReportFileName = @ReportFileName AND ruav.ArgumentName = 'DateFrom' ) , ( SELECT esm.GetDateFromParts ( YEAR(GETDATE()), 1, 1 ) ) ) ]]> </DefaultSql> <ListSql></ListSql> </Argument>
Powyższa definicja argumentu w aplikacji wygląda następująco:

Po kliknięciu w pole wartości możliwy jest wybór daty.
<Argument> <Type>Custom</Type> <CustomTypeName>Operators</CustomTypeName> <Name>Operators</Name> <VisibleName>Operatorzy</VisibleName> <IsRequired>true</IsRequired> </Argument>
Powyższa definicja argumentu w aplikacji wygląda następująco:

Używając parametru IsRequired konieczny będzie wybór conajmniej jednej wartości.
<Argument> <Type>Text</Type> <Name>ArticleCode</Name> <VisibleName>Kod artykułu</VisibleName> <IsRequired>false</IsRequired> </Argument>
Powyższa definicja argumentu w aplikacji wygląda następująco:

Możliwe jest wpisanie dowolnej wartości tekstowej.
<Argument> <Type>Autocomplete</Type> <Name>LocationCode</Name> <VisibleName>Położenie</VisibleName> <AutocompleteSqlProc> <Name>WMS.Reports_GetLocationsAutocompleteData</Name> <Parameters> <ArgumentValueParameter paramname="WarehouseId">WarehouseId</ArgumentValueParameter> </Parameters> </AutocompleteSqlProc> <DefaultSql></DefaultSql> <IsRequired>false</IsRequired> </Argument>
Powyższa definicja argumentu w aplikacji wygląda następująco:

Podczas wpisywania wartości wyświetlane są podpowiedzi.


