Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions SAMPLES.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,10 +40,10 @@ ready-to-run apps** the README leads with.

| Sample | Class |
|---|---|
| **Basics I** — Hello World, the Smallest App<br>The smallest app that runs: one class, one view_display( ), a Page with a title - the shape every other sample starts from.<br><sub>hello world smallest first app minimal start here template</sub><br><sub>docs: [get_started/hello_world](https://abap2ui5.github.io/docs/get_started/hello_world), [cookbook/view/definition](https://abap2ui5.github.io/docs/cookbook/view/definition), [cookbook/expert_more/snippets](https://abap2ui5.github.io/docs/cookbook/expert_more/snippets)</sub> | [`Z2UI5_CL_SMP_APP_493`](src/01/z2ui5_cl_smp_app_493.clas.abap) |
| **Basics II** — Data Binding: Input and Button<br>Binds a class attribute to an Input with _bind( ), so what the user types is in the ABAP variable on the next roundtrip and a Text shows it back.<br><sub>binding _bind model attribute value input button serialize</sub><br><sub>docs: [cookbook/model/binding](https://abap2ui5.github.io/docs/cookbook/model/binding)</sub> | [`Z2UI5_CL_SMP_APP_494`](src/01/z2ui5_cl_smp_app_494.clas.abap) |
| **Basics III** — Lifecycle: Init, Event, Navigated<br>The three questions main( ) asks - init, event, navigated - as one dispatcher, showing what survives a roundtrip and what a navigation does to it.<br><sub>lifecycle roundtrip main dispatcher state serialize check_on_init check_on_event check_on_navigated</sub><br><sub>docs: [cookbook/event_navigation/life_cycle](https://abap2ui5.github.io/docs/cookbook/event_navigation/life_cycle), [cookbook/expert_more/snippets](https://abap2ui5.github.io/docs/cookbook/expert_more/snippets)</sub> | [`Z2UI5_CL_SMP_APP_495`](src/01/z2ui5_cl_smp_app_495.clas.abap) |
| **Basics IV** — Events, Views and Roundtrips<br>What one event does to a running app: a second view replaces the first, the state comes back with it, and an uncaught error surfaces where you can see it.<br><sub>roundtrip restart second view uncaught error controller basics</sub><br><sub>docs: [cookbook/event_navigation/life_cycle](https://abap2ui5.github.io/docs/cookbook/event_navigation/life_cycle), [cookbook/expert_more/snippets](https://abap2ui5.github.io/docs/cookbook/expert_more/snippets)</sub> | [`Z2UI5_CL_SMP_APP_004`](src/01/z2ui5_cl_smp_app_004.clas.abap) |
| **Basics I** — Hello World, the Smallest App<br>The smallest app that runs: one class, one view_display( ), a Page with a title - the shape every other sample starts from.<br><sub>hello world smallest first app minimal start here template</sub><br><sub>docs: [get_started/hello_world](https://abap2ui5.github.io/docs/get_started/hello_world), [cookbook/view/definition](https://abap2ui5.github.io/docs/cookbook/view/definition), [cookbook/expert_more/snippets](https://abap2ui5.github.io/docs/cookbook/expert_more/snippets), [tutorials/walkthrough/step-1](https://abap2ui5.github.io/docs/tutorials/walkthrough/step-1)</sub> | [`Z2UI5_CL_SMP_APP_493`](src/01/z2ui5_cl_smp_app_493.clas.abap) |
| **Basics II** — Data Binding: Input and Button<br>Binds a class attribute to an Input with _bind( ), so what the user types is in the ABAP variable on the next roundtrip and a Text shows it back.<br><sub>binding _bind model attribute value input button serialize</sub><br><sub>docs: [cookbook/model/binding](https://abap2ui5.github.io/docs/cookbook/model/binding), [tutorials/walkthrough/step-4](https://abap2ui5.github.io/docs/tutorials/walkthrough/step-4)</sub> | [`Z2UI5_CL_SMP_APP_494`](src/01/z2ui5_cl_smp_app_494.clas.abap) |
| **Basics III** — Lifecycle: Init, Event, Navigated<br>The three questions main( ) asks - init, event, navigated - as one dispatcher, showing what survives a roundtrip and what a navigation does to it.<br><sub>lifecycle roundtrip main dispatcher state serialize check_on_init check_on_event check_on_navigated</sub><br><sub>docs: [cookbook/event_navigation/life_cycle](https://abap2ui5.github.io/docs/cookbook/event_navigation/life_cycle), [cookbook/expert_more/snippets](https://abap2ui5.github.io/docs/cookbook/expert_more/snippets), [tutorials/walkthrough/step-3](https://abap2ui5.github.io/docs/tutorials/walkthrough/step-3)</sub> | [`Z2UI5_CL_SMP_APP_495`](src/01/z2ui5_cl_smp_app_495.clas.abap) |
| **Basics IV** — Events, Views and Roundtrips<br>What one event does to a running app: a second view replaces the first, the state comes back with it, and an uncaught error surfaces where you can see it.<br><sub>roundtrip restart second view uncaught error controller basics</sub><br><sub>docs: [cookbook/event_navigation/life_cycle](https://abap2ui5.github.io/docs/cookbook/event_navigation/life_cycle), [cookbook/expert_more/snippets](https://abap2ui5.github.io/docs/cookbook/expert_more/snippets), [tutorials/walkthrough/step-3](https://abap2ui5.github.io/docs/tutorials/walkthrough/step-3)</sub> | [`Z2UI5_CL_SMP_APP_004`](src/01/z2ui5_cl_smp_app_004.clas.abap) |
| **Basics V** — The Developer Tools (Ctrl+F12)<br>What Ctrl+F12 opens: the request and response payload, the generated XML view, the model, the source and the error log - the first place to look when something does not render.<br><sub>developer tools devtools ctrl f12 debug inspect payload previous request response view xml view model source code log error adt export</sub><br><sub>docs: [cookbook/troubleshooting/common_failures](https://abap2ui5.github.io/docs/cookbook/troubleshooting/common_failures)</sub> | [`Z2UI5_CL_SMP_APP_496`](src/01/z2ui5_cl_smp_app_496.clas.abap) |

### Binding
Expand Down Expand Up @@ -104,7 +104,7 @@ ready-to-run apps** the README leads with.
| Sample | Class |
|---|---|
| Control Objects in t_arg (FacetFilter)<br>Passes whole control objects to the backend in t_arg: a FacetFilter's selected items arrive as data instead of being reconstructed by hand.<br><sub>facetfilter filter object marshalling selected items</sub><br><sub>docs: [cookbook/event_navigation/backend](https://abap2ui5.github.io/docs/cookbook/event_navigation/backend)</sub> | [`Z2UI5_CL_SMP_APP_197`](src/01/z2ui5_cl_smp_app_197.clas.abap) |
| Extra Arguments with t_arg<br>Sends extra arguments with an event (t_arg), so a handler knows which row, which value or which fixed payload it was called for.<br><sub>argument parameter payload event data fixed value</sub><br><sub>docs: [cookbook/event_navigation/backend](https://abap2ui5.github.io/docs/cookbook/event_navigation/backend)</sub> | [`Z2UI5_CL_SMP_APP_167`](src/01/z2ui5_cl_smp_app_167.clas.abap) |
| Extra Arguments with t_arg<br>Sends extra arguments with an event (t_arg), so a handler knows which row, which value or which fixed payload it was called for.<br><sub>argument parameter payload event data fixed value</sub><br><sub>docs: [cookbook/event_navigation/backend](https://abap2ui5.github.io/docs/cookbook/event_navigation/backend), [tutorials/walkthrough/step-6](https://abap2ui5.github.io/docs/tutorials/walkthrough/step-6)</sub> | [`Z2UI5_CL_SMP_APP_167`](src/01/z2ui5_cl_smp_app_167.clas.abap) |
| Keyboard Shortcuts, Ctrl+S (A)<br>Binds keyboard shortcuts such as Ctrl+S to backend events, so the app answers a key combination the way a desktop program would.<br><sub>shortcut hotkey ctrl key combination keyboard_shortcut</sub><br><sub>docs: [cookbook/browser_interaction/keyboard_shortcuts](https://abap2ui5.github.io/docs/cookbook/browser_interaction/keyboard_shortcuts)</sub> | [`Z2UI5_CL_SMP_APP_471`](src/01/z2ui5_cl_smp_app_471.clas.abap) |
| Link with preventDefault (A)<br>A Link whose default browser action is suppressed (check_prevent_default), so the app handles the click instead of the href.<br><sub>link href default action check_prevent_default</sub><br><sub>docs: [cookbook/event_navigation/frontend](https://abap2ui5.github.io/docs/cookbook/event_navigation/frontend)</sub> | [`Z2UI5_CL_SMP_APP_472`](src/01/z2ui5_cl_smp_app_472.clas.abap) |

Expand Down Expand Up @@ -138,7 +138,7 @@ ready-to-run apps** the README leads with.
| Sample | Class |
|---|---|
| Events on Cell Level<br>Events on cell level in a grid table: which row and which column the user was in, and what arrives in the backend.<br><sub>cell enter row index event grid alv</sub><br><sub>docs: [cookbook/model/tables](https://abap2ui5.github.io/docs/cookbook/model/tables)</sub> | [`Z2UI5_CL_SMP_APP_160`](src/01/z2ui5_cl_smp_app_160.clas.abap) |
| Full Example with sap.ui.table<br>The full sap.ui.table example: a DynamicPage with search, sort, filter, currency columns and row actions - the closest thing here to a finished ALV.<br><sub>grid alv dynamicpage column row action currency search sort filter</sub><br><sub>docs: [get_started/full_example](https://abap2ui5.github.io/docs/get_started/full_example), [cookbook/model/tables](https://abap2ui5.github.io/docs/cookbook/model/tables)</sub> | [`Z2UI5_CL_SMP_APP_070`](src/01/z2ui5_cl_smp_app_070.clas.abap) |
| Full Example with sap.ui.table<br>The full sap.ui.table example: a DynamicPage with search, sort, filter, currency columns and row actions - the closest thing here to a finished ALV.<br><sub>grid alv dynamicpage column row action currency search sort filter</sub><br><sub>docs: [get_started/full_example](https://abap2ui5.github.io/docs/get_started/full_example), [cookbook/model/tables](https://abap2ui5.github.io/docs/cookbook/model/tables), [tutorials/walkthrough/step-8](https://abap2ui5.github.io/docs/tutorials/walkthrough/step-8)</sub> | [`Z2UI5_CL_SMP_APP_070`](src/01/z2ui5_cl_smp_app_070.clas.abap) |
| Keep Column Filters on Refresh (C)<br>Keeps the active sap.ui.table column filters across a view model update, through the abap2UI5 uitableext custom control - without it they are reset.<br><sub>column filter reset refresh uitableext grid alv</sub><br><sub>docs: [cookbook/model/tables](https://abap2ui5.github.io/docs/cookbook/model/tables)</sub> | [`Z2UI5_CL_SMP_APP_143`](src/01/z2ui5_cl_smp_app_143.clas.abap) |

### List
Expand All @@ -147,7 +147,7 @@ ready-to-run apps** the README leads with.
|---|---|
| Filter and Sort the Binding from ABAP (A)<br>Sorts and filters a bound list from ABAP by calling getBinding on the control - the binding does the work, not a rebuilt table.<br><sub>binding_call getbinding sorter filter follow_up_action</sub> | [`Z2UI5_CL_SMP_APP_454`](src/01/z2ui5_cl_smp_app_454.clas.abap) |
| Live Filter on the Client, No Roundtrip (A)<br>Filters a list live on the client as the user types - no roundtrip, no backend, the same binding_call from the view chain.<br><sub>binding_call live search client side no roundtrip filter</sub> | [`Z2UI5_CL_SMP_APP_455`](src/01/z2ui5_cl_smp_app_455.clas.abap) |
| StandardListItem, Highlight and Events<br>A sap.m.List of StandardListItems: highlight, info state, press events and what a selection sends back.<br><sub>sap.m.list standardlistitem highlight infostate press selection</sub> | [`Z2UI5_CL_SMP_APP_048`](src/01/z2ui5_cl_smp_app_048.clas.abap) |
| StandardListItem, Highlight and Events<br>A sap.m.List of StandardListItems: highlight, info state, press events and what a selection sends back.<br><sub>sap.m.list standardlistitem highlight infostate press selection</sub><br><sub>docs: [tutorials/walkthrough/step-5](https://abap2ui5.github.io/docs/tutorials/walkthrough/step-5)</sub> | [`Z2UI5_CL_SMP_APP_048`](src/01/z2ui5_cl_smp_app_048.clas.abap) |

### Menu

Expand Down Expand Up @@ -204,7 +204,7 @@ ready-to-run apps** the README leads with.
| Element Binding to the Selected Row (A)<br>Element binding on a popup: the dialog binds RELATIVELY to the row that was pressed, so its fields need no path of their own.<br><sub>element binding relative path aggregation dialog row</sub><br><sub>docs: [cookbook/event_navigation/frontend](https://abap2ui5.github.io/docs/cookbook/event_navigation/frontend), [cookbook/popup_popover/popup](https://abap2ui5.github.io/docs/cookbook/popup_popover/popup)</sub> | [`Z2UI5_CL_SMP_APP_470`](src/01/z2ui5_cl_smp_app_470.clas.abap) |
| Navigate between Dialogs (NavContainer) (A)<br>A NavContainer inside a dialog: several pages in one popup, with back and forward between them.<br><sub>navcontainer dialog pages back forward</sub><br><sub>docs: [cookbook/popup_popover/popup](https://abap2ui5.github.io/docs/cookbook/popup_popover/popup)</sub> | [`Z2UI5_CL_SMP_APP_170`](src/01/z2ui5_cl_smp_app_170.clas.abap) |
| Value Help: Suggestions and F4 Dialog<br>The value help, both halves: suggestions while typing and the F4 dialog behind the field, over the same data.<br><sub>f4 search help suggestion input dialog select</sub><br><sub>docs: [cookbook/popup_popover/popup](https://abap2ui5.github.io/docs/cookbook/popup_popover/popup), [cookbook/expert_more/value_help](https://abap2ui5.github.io/docs/cookbook/expert_more/value_help)</sub> | [`Z2UI5_CL_SMP_APP_009`](src/01/z2ui5_cl_smp_app_009.clas.abap) |
| Ways to Open a Dialog (A)<br>The ways to open a dialog - from this app, from a sub app, rebuilt or destroyed - and what each one does to the view behind it.<br><sub>dialog sub app destroy rerender background view</sub><br><sub>docs: [cookbook/popup_popover/popup](https://abap2ui5.github.io/docs/cookbook/popup_popover/popup)</sub> | [`Z2UI5_CL_SMP_APP_012`](src/01/z2ui5_cl_smp_app_012.clas.abap) |
| Ways to Open a Dialog (A)<br>The ways to open a dialog - from this app, from a sub app, rebuilt or destroyed - and what each one does to the view behind it.<br><sub>dialog sub app destroy rerender background view</sub><br><sub>docs: [cookbook/popup_popover/popup](https://abap2ui5.github.io/docs/cookbook/popup_popover/popup), [tutorials/walkthrough/step-7](https://abap2ui5.github.io/docs/tutorials/walkthrough/step-7)</sub> | [`Z2UI5_CL_SMP_APP_012`](src/01/z2ui5_cl_smp_app_012.clas.abap) |

### Scroll

Expand Down
2 changes: 1 addition & 1 deletion src/01/z2ui5_cl_smp_app_004.clas.abap
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
" @keywords roundtrip restart second view uncaught error controller basics
" @summary What one event does to a running app: a second view replaces the first, the state comes back with it, and an uncaught error surfaces where you can see it.
" @docs https://abap2ui5.github.io/docs/cookbook/event_navigation/life_cycle https://abap2ui5.github.io/docs/cookbook/expert_more/snippets
" @docs https://abap2ui5.github.io/docs/cookbook/event_navigation/life_cycle https://abap2ui5.github.io/docs/cookbook/expert_more/snippets https://abap2ui5.github.io/docs/tutorials/walkthrough/step-3
CLASS z2ui5_cl_smp_app_004 DEFINITION PUBLIC.

PUBLIC SECTION.
Expand Down
2 changes: 1 addition & 1 deletion src/01/z2ui5_cl_smp_app_012.clas.abap
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
" @keywords dialog sub app destroy rerender background view
" @summary The ways to open a dialog - from this app, from a sub app, rebuilt or destroyed - and what each one does to the view behind it.
" @docs https://abap2ui5.github.io/docs/cookbook/popup_popover/popup
" @docs https://abap2ui5.github.io/docs/cookbook/popup_popover/popup https://abap2ui5.github.io/docs/tutorials/walkthrough/step-7
CLASS z2ui5_cl_smp_app_012 DEFINITION PUBLIC.

PUBLIC SECTION.
Expand Down
1 change: 1 addition & 0 deletions src/01/z2ui5_cl_smp_app_048.clas.abap
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
" @keywords sap.m.list standardlistitem highlight infostate press selection
" @summary A sap.m.List of StandardListItems: highlight, info state, press events and what a selection sends back.
" @docs https://abap2ui5.github.io/docs/tutorials/walkthrough/step-5
CLASS z2ui5_cl_smp_app_048 DEFINITION PUBLIC.

PUBLIC SECTION.
Expand Down
2 changes: 1 addition & 1 deletion src/01/z2ui5_cl_smp_app_070.clas.abap
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
" @keywords grid alv dynamicpage column row action currency search sort filter
" @summary The full sap.ui.table example: a DynamicPage with search, sort, filter, currency columns and row actions - the closest thing here to a finished ALV.
" @docs https://abap2ui5.github.io/docs/get_started/full_example https://abap2ui5.github.io/docs/cookbook/model/tables
" @docs https://abap2ui5.github.io/docs/get_started/full_example https://abap2ui5.github.io/docs/cookbook/model/tables https://abap2ui5.github.io/docs/tutorials/walkthrough/step-8
CLASS z2ui5_cl_smp_app_070 DEFINITION PUBLIC.

PUBLIC SECTION.
Expand Down
2 changes: 1 addition & 1 deletion src/01/z2ui5_cl_smp_app_167.clas.abap
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
" @keywords argument parameter payload event data fixed value
" @summary Sends extra arguments with an event (t_arg), so a handler knows which row, which value or which fixed payload it was called for.
" @docs https://abap2ui5.github.io/docs/cookbook/event_navigation/backend
" @docs https://abap2ui5.github.io/docs/cookbook/event_navigation/backend https://abap2ui5.github.io/docs/tutorials/walkthrough/step-6
CLASS z2ui5_cl_smp_app_167 DEFINITION PUBLIC.

PUBLIC SECTION.
Expand Down
2 changes: 1 addition & 1 deletion src/01/z2ui5_cl_smp_app_493.clas.abap
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
" @keywords hello world smallest first app minimal start here template
" @summary The smallest app that runs: one class, one view_display( ), a Page with a title - the shape every other sample starts from.
" @docs https://abap2ui5.github.io/docs/get_started/hello_world https://abap2ui5.github.io/docs/cookbook/view/definition https://abap2ui5.github.io/docs/cookbook/expert_more/snippets
" @docs https://abap2ui5.github.io/docs/get_started/hello_world https://abap2ui5.github.io/docs/cookbook/view/definition https://abap2ui5.github.io/docs/cookbook/expert_more/snippets https://abap2ui5.github.io/docs/tutorials/walkthrough/step-1
CLASS z2ui5_cl_smp_app_493 DEFINITION PUBLIC.

PUBLIC SECTION.
Expand Down
2 changes: 1 addition & 1 deletion src/01/z2ui5_cl_smp_app_494.clas.abap
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
" @keywords binding _bind model attribute value input button serialize
" @summary Binds a class attribute to an Input with _bind( ), so what the user types is in the ABAP variable on the next roundtrip and a Text shows it back.
" @docs https://abap2ui5.github.io/docs/cookbook/model/binding
" @docs https://abap2ui5.github.io/docs/cookbook/model/binding https://abap2ui5.github.io/docs/tutorials/walkthrough/step-4
CLASS z2ui5_cl_smp_app_494 DEFINITION PUBLIC.

PUBLIC SECTION.
Expand Down
2 changes: 1 addition & 1 deletion src/01/z2ui5_cl_smp_app_495.clas.abap
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
" @keywords lifecycle roundtrip main dispatcher state serialize check_on_init check_on_event check_on_navigated
" @summary The three questions main( ) asks - init, event, navigated - as one dispatcher, showing what survives a roundtrip and what a navigation does to it.
" @docs https://abap2ui5.github.io/docs/cookbook/event_navigation/life_cycle https://abap2ui5.github.io/docs/cookbook/expert_more/snippets
" @docs https://abap2ui5.github.io/docs/cookbook/event_navigation/life_cycle https://abap2ui5.github.io/docs/cookbook/expert_more/snippets https://abap2ui5.github.io/docs/tutorials/walkthrough/step-3
CLASS z2ui5_cl_smp_app_495 DEFINITION PUBLIC.

PUBLIC SECTION.
Expand Down
Loading