Pytanie |
Odpowiedź |
Example of grid initialization rozpocznij naukę
|
|
"type": "grid", "label": "Simple View Grid", "id": "simpleGridWorker", "rows": "<% workersEndpoint. data %>", "rowVariableName": "thisRow", "columns": [
|
|
|
What must the inbound endpoint used by rows return? rozpocznij naukę
|
|
A list containing the data elements to display as grid rows.
|
|
|
What is the purpose of rowVariableName? rozpocznij naukę
|
|
It defines a variable representing the data element for the current row.
|
|
|
Can columns and dynamicColumns be used together? rozpocznij naukę
|
|
No. They are mutually exclusive.
|
|
|
Can columns and dynamicColumns be used together? rozpocznij naukę
|
|
|
|
|
Dynamic Columns - What information should column metadata contain? rozpocznij naukę
|
|
At minimum, information such as the column ID, label, type, and data field.
|
|
|
Example of DynamicColumns rozpocznij naukę
|
|
"rows": "<% workersEndpoint. data %>", "dynamicColumns": {"type": "dynamicColumns", "columns": "<% [{'name': 'Name',
|
|
|
What does attributeName define? rozpocznij naukę
|
|
The field path in the row data whose value should be displayed in the generated column.
|
|
|
Does a grid paginate data by default? rozpocznij naukę
|
|
No. By default, it displays as much data as the client can handle without pagination.
|
|
|
Which two attributes can be used to configure grid paging? rozpocznij naukę
|
|
autoPaging and pagingInfo
|
|
|
Can autoPaging and pagingInfo be used together? rozpocznij naukę
|
|
No. They are mutually exclusive.
|
|
|
When should autoPaging be used? rozpocznij naukę
|
|
With fast endpoints that don't support paging and return large volumes of data in a single call.
|
|
|
When does autoPaging start loading additional data? rozpocznij naukę
|
|
When there are more than 50 rows of results on a view page.
|
|
|
How many rows are initially displayed with autoPaging? rozpocznij naukę
|
|
|
|
|
What happens when the user scrolls down with autoPaging enabled? rozpocznij naukę
|
|
The grid calls the endpoint again to load more results.
|
|
|
Why isn't autoPaging recommended for slow endpoints? rozpocznij naukę
|
|
Because the endpoint may be called multiple times as the user scrolls.
|
|
|
When should pagingInfo be used? rozpocznij naukę
|
|
When the endpoint itself returns paginated data.
|
|
|
Which required attribute identifies the paginated endpoint? rozpocznij naukę
|
|
|
|
|
What must the endpoint used by pagingInfo support? rozpocznij naukę
|
|
limit and offset paging parameters.
|
|
|
Which variables are used to pass paging values between requests? rozpocznij naukę
|
|
pagingVariables. limit and pagingVariables. offset
|
|
|
What should the initial pagingVariables. limit typically be? rozpocznij naukę
|
|
The example initializes it to 100.
|
|
|
What should the initial pagingVariables. offset typically be? rozpocznij naukę
|
|
0
|
|
|
What happens when the user scrolls beyond the currently fetched data? rozpocznij naukę
|
|
Subsequent requests automatically update pagingVariables. offset.
|
|
|
What does pagingInfo. rowCount represent? rozpocznij naukę
|
|
The total number of items returned by the endpoint, typically the total field.
|
|
|
What does pagingInfo. data represent? rozpocznij naukę
|
|
The paginated list of data returned by the endpoint, typically the data field.
|
|
|
What type of variables are pagingVariables. limit and pagingVariables. offset? rozpocznij naukę
|
|
They are string variables.
|
|
|
Example of paginated endpoint rozpocznij naukę
|
|
"endPoints": [{"baseUrlType": "workday-staffing", "name": "workersPagedEndpoint", "authType": "sso", "url": "<% var limit = pagingVariables. limit?: 100; var offset = pagingVariables. offset?: 0; '/workers? limit=' + limit + '&offset=' + offset;
|
|
|
Example of Pagination Info rozpocznij naukę
|
|
{"type": "grid", "label": "Wrkrs", "rows": "<% wrkrsPgdNdpnt. data %>", "rowVariableName": "wrkr", "pagingInfo": {"endPoint":"<%ndPnts. wrkrsPgdNdpint%>", "rowCount":"<%wrkrsPgdNdpnt. total%>", "data":"<%wrkrsPgdNdpnt. data%>"}, "columns": [
|
|
|
What happens when a grid is placed on an edit page? rozpocznij naukę
|
|
The widgets in the grid become editable, allowing users to add or modify row data.
|
|
|
What attribute controls whether users can add rows? rozpocznij naukę
|
|
doNotAdd - If false, the user can add a row on top of the grid.
|
|
|
How can you distinguish a new row from an existing row? rozpocznij naukę
|
|
Check whether its row ID is empty or non-empty.
|
|
|
Example of valueOutBinding rozpocznij naukę
|
|
{"type": "column", "columnId": "expenseIdColumn", "label": "Expense ID", "cellTemplate": {"type": "text", "id": "entryId", "value": "<% rowdata. id %>", "valueOutBinding": "putExpense. id",
|
|
|
example of valueOfBinding and ValuesOut rozpocznij naukę
|
|
{"type": "column", "columnId": "clmn", "label": "lb", "cellTemplate": {"type": "text", "id": "expenseDate", "value": "<%test. value%>", "valuesOut": [{"value": "<% self. value %>", "valueOutBinding": "postExpense. date"},
|
|
|
When use ValuesOut for Grid? rozpocznij naukę
|
|
For all other non-ID columns, use valuesOut to specify valueOutBinding with data for both the POST and PUT (or PATCH) outbound endpoints.
|
|
|
What event handles a new grid row? rozpocznij naukę
|
|
onRowAdd, Example: "rowVariableName": "rowdata", "onRowAdd": "<% updateTotalQuantity() %>",
|
|
|
What event handles row deletion? rozpocznij naukę
|
|
onRowRemove, "rowVariableName": "rowdata", "onRowAdd": "<% updateTotalQuantity() %>", "onRowRemove": "<% updateTotalQuantity() %>",
|
|
|
What is the typical position of a newly added row when showRowMover is false? rozpocznij naukę
|
|
|
|
|
How do you get the number of rows in a grid? rozpocznij naukę
|
|
Use the size() method on the grid's rows property: expenseGrid. rows. size()
|
|
|
How can you submit all grid rows in one outbound request as an array? rozpocznij naukę
|
|
Set isArrayOutBinding to true.
|
|
|
What else is required when using isArrayOutBinding: true? rozpocznij naukę
|
|
Each column's cellTemplate should use an array-style valueOutBinding, for example: someOutboundEndpoint. someDataArray[]. someField
|
|
|
What happens when isArrayOutBinding = false rozpocznij naukę
|
|
Rows are submitted in separate requests, one request per row.
|
|
|
How do you submit only selected rows? rozpocznij naukę
|
|
Use the outbound endpoint's onSend event handler.
|
|
|
How do you determine whether the current row is selected? rozpocznij naukę
|
|
currentRowVariable. selected
|
|
|
What does self. data contain in an onSend handler? rozpocznij naukę
|
|
The data generated from the grid's valueOutBinding values.
|
|
|
What must isArrayOutBinding be when using currentRowVariable in onSend? rozpocznij naukę
|
|
|
|
|
Can currentRowVariable be used in a valueOutBinding with PMD Scripting? rozpocznij naukę
|
|
|
|
|