| 2816 | // |
| 2817 | |
| 2818 | static void gen_select( const act* action, int column) |
| 2819 | { |
| 2820 | gpre_req* request = action->act_request; |
| 2821 | gpre_port* port = request->req_primary; |
| 2822 | TEXT name[MAX_REF_SIZE]; |
| 2823 | gen_name(name, request->req_eof, true); |
| 2824 | |
| 2825 | gen_s_start(action, column); |
| 2826 | gen_receive(action, column, port); |
| 2827 | printa(column, "if SQLCODE = 0 then", name); |
| 2828 | column += INDENT; |
| 2829 | printa(column, "if %s /= 0 then", name); |
| 2830 | column += INDENT; |
| 2831 | |
| 2832 | gpre_nod* var_list = (gpre_nod*) action->act_object; |
| 2833 | if (var_list) |
| 2834 | { |
| 2835 | for (int i = 0; i < var_list->nod_count; i++) |
| 2836 | asgn_to(action, (ref*) var_list->nod_arg[i], column); |
| 2837 | } |
| 2838 | |
| 2839 | printa(column - INDENT, "else"); |
| 2840 | printa(column, "SQLCODE := 100;"); |
| 2841 | column -= INDENT; |
| 2842 | endif(column); |
| 2843 | column -= INDENT; |
| 2844 | endif(column); |
| 2845 | } |
| 2846 | |
| 2847 | |
| 2848 | //____________________________________________________________ |
no test coverage detected