|
| 1 | +--- |
| 2 | +outline: [2, 4] |
| 3 | +--- |
1 | 4 | # File Download, Upload |
| 5 | + |
| 6 | + |
| 7 | + |
| 8 | +#### Download |
| 9 | + |
| 10 | +```abap |
| 11 | +METHOD z2ui5_if_app~main. |
| 12 | +
|
| 13 | + client->view_display( z2ui5_cl_xml_view=>factory( |
| 14 | + )->page( |
| 15 | + )->button( |
| 16 | + text = 'Open Download Popup' |
| 17 | + press = client->_event( 'BUTTON_DOWNLOAD' ) |
| 18 | + )->stringify( ) ). |
| 19 | +
|
| 20 | +
|
| 21 | + CASE client->get( )-event. |
| 22 | +
|
| 23 | + WHEN 'BUTTON_DOWNLOAD'. |
| 24 | +
|
| 25 | + DATA(lv_name) = `Default_File_Name.jpg`. |
| 26 | + DATA(lv_content) = `data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAApgAAA` && |
| 27 | + `KYB3X3/OAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAANCSURBVEiJtZZPbBtFFMZ/M7ubXdtdb1xSFyeilBapySVU8h8OoFaooFSqiihIVIp` && |
| 28 | + `QBKci6KEg9Q6H9kovIHoCIVQJJCKE1ENFjnAgcaSGC6rEnxBwA04Tx43t2FnvDAfjkNibxgHxnWb2e/u992bee7tCa00YFsffekFY+nUzFtjW0LrvjRXrCDIAaPLlW` && |
| 29 | + `0nHL0SsZtVoaF98mLrx3pdhOqLtYPHChahZcYYO7KvPFxvRl5XPp1sN3adWiD1ZAqD6XYK1b/dvE5IWryTt2udLFedwc1+9kLp+vbbpoDh+6TklxBeAi9TL0taeWpd` && |
| 30 | + `mZzQDry0AcO+jQ12RyohqqoYoo8RDwJrU+qXkjWtfi8Xxt58BdQuwQs9qC/afLwCw8tnQbqYAPsgxE1S6F3EAIXux2oQFKm0ihMsOF71dHYx+f3NND68ghCu1YIoeP` && |
| 31 | + `PQN1pGRABkJ6Bus96CutRZMydTl+TvuiRW1m3n0eDl0vRPcEysqdXn+jsQPsrHMquGeXEaY4Yk4wxWcY5V/9scqOMOVUFthatyTy8QyqwZ+kDURKoMWxNKr2EeqVKc` && |
| 32 | + `TNOajqKoBgOE28U4tdQl5p5bwCw7BWquaZSzAPlwjlithJtp3pTImSqQRrb2Z8PHGigD4RZuNX6JYj6wj7O4TFLbCO/Mn/m8R+h6rYSUb3ekokRY6f/YukArN979jc` && |
| 33 | + `W+V/S8g0eT/N3VN3kTqWbQ428m9/8k0P/1aIhF36PccEl6EhOcAUCrXKZXXWS3XKd2vc/TRBG9O5ELC17MmWubD2nKhUKZa26Ba2+D3P+4/MNCFwg59oWVeYhkzgN/` && |
| 34 | + `JDR8deKBoD7Y+ljEjGZ0sosXVTvbc6RHirr2reNy1OXd6pJsQ+gqjk8VWFYmHrwBzW/n+uMPFiRwHB2I7ih8ciHFxIkd/3Omk5tCDV1t+2nNu5sxxpDFNx+huNhVT3` && |
| 35 | + `/zMDz8usXC3ddaHBj1GHj/As08fwTS7Kt1HBTmyN29vdwAw+/wbwLVOJ3uAD1wi/dUH7Qei66PfyuRj4Ik9is+hglfbkbfR3cnZm7chlUWLdwmprtCohX4HUtlOcQj` && |
| 36 | + `LYCu+fzGJH2QRKvP3UNz8bWk1qMxjGTOMThZ3kvgLI5AzFfo379UAAAAASUVORK5CYII=`. |
| 37 | +
|
| 38 | + client->follow_up_action( val = client->_event_client( |
| 39 | + val = client->cs_event-download_b64_file |
| 40 | + t_arg = VALUE #( ( lv_content ) ( lv_name ) ) ) ). |
| 41 | +
|
| 42 | + ENDCASE. |
| 43 | +
|
| 44 | +ENDMETHOD. |
| 45 | +``` |
| 46 | + |
| 47 | + |
| 48 | +#### Upload |
| 49 | + |
| 50 | +```abap |
| 51 | +CLASS z2ui5_cl_sample_upload DEFINITION PUBLIC. |
| 52 | +
|
| 53 | + PUBLIC SECTION. |
| 54 | + INTERFACES Z2UI5_if_app. |
| 55 | + DATA mv_path TYPE string. |
| 56 | + DATA mv_value TYPE string. |
| 57 | +
|
| 58 | +ENDCLASS. |
| 59 | +
|
| 60 | +CLASS z2ui5_cl_sample_upload IMPLEMENTATION. |
| 61 | + METHOD Z2UI5_if_app~main. |
| 62 | +
|
| 63 | + client->view_display( z2ui5_cl_xml_view=>factory( |
| 64 | + )->page( |
| 65 | + )->_z2ui5( )->file_uploader( |
| 66 | + value = client->_bind_edit( mv_value ) |
| 67 | + path = client->_bind_edit( mv_path ) |
| 68 | + placeholder = 'filepath here...' |
| 69 | + upload = client->_event( 'UPLOAD' ) |
| 70 | + )->stringify( ) ). |
| 71 | +
|
| 72 | + CASE client->get( )-event. |
| 73 | + WHEN 'UPLOAD'. |
| 74 | + "process with mv_value and mv_path... |
| 75 | + client->message_box_display( `file uploaded` ). |
| 76 | + ENDCASE. |
| 77 | +
|
| 78 | + ENDMETHOD. |
| 79 | +ENDCLASS. |
| 80 | +``` |
0 commit comments