| 1133 | // |
| 1134 | |
| 1135 | static void gen_create_database(const act* action) |
| 1136 | { |
| 1137 | TEXT s1[32], s2[32]; |
| 1138 | |
| 1139 | const gpre_req* request = ((mdbb*) action->act_object)->mdbb_dpb_request; |
| 1140 | const gpre_dbb* db = (gpre_dbb*) request->req_database; |
| 1141 | sprintf(s1, "isc_%dl", request->req_ident); |
| 1142 | |
| 1143 | if (request->req_flags & REQ_extend_dpb) |
| 1144 | { |
| 1145 | sprintf(s2, "isc_%dp", request->req_ident); |
| 1146 | if (request->req_length) |
| 1147 | { |
| 1148 | sprintf(output_buffer, "%s%s = isc_%d\n", COLUMN, s2, request->req_ident); |
| 1149 | FTN_print_buffer(output_buffer); |
| 1150 | } |
| 1151 | if (db->dbb_r_user) |
| 1152 | { |
| 1153 | sprintf(output_buffer, |
| 1154 | "%sCALL ISC_MODIFY_DPB (%s, %s, isc_dpb_user_name, %s, %sLEN(%s)%s)\n", |
| 1155 | COLUMN, |
| 1156 | s2, s1, db->dbb_r_user, |
| 1157 | I2CONST_1, db->dbb_r_user, I2CONST_2); |
| 1158 | FTN_print_buffer(output_buffer); |
| 1159 | } |
| 1160 | if (db->dbb_r_password) |
| 1161 | { |
| 1162 | sprintf(output_buffer, |
| 1163 | "%sCALL ISC_MODIFY_DPB (%s, %s, isc_dpb_password, %s, %sLEN(%s)%s)\n", |
| 1164 | COLUMN, |
| 1165 | s2, s1, db->dbb_r_password, |
| 1166 | I2CONST_1, db->dbb_r_password, I2CONST_2); |
| 1167 | FTN_print_buffer(output_buffer); |
| 1168 | } |
| 1169 | |
| 1170 | // SQL Role supports GPRE/Fortran |
| 1171 | if (db->dbb_r_sql_role) |
| 1172 | { |
| 1173 | sprintf(output_buffer, |
| 1174 | "%sCALL ISC_MODIFY_DPB (%s, %s, isc_dpb_sql_role_name, %s, %sLEN(%s)%s)\n", |
| 1175 | COLUMN, |
| 1176 | s2, s1, db->dbb_r_sql_role, |
| 1177 | I2CONST_1, db->dbb_r_sql_role, I2CONST_2); |
| 1178 | FTN_print_buffer(output_buffer); |
| 1179 | } |
| 1180 | |
| 1181 | if (db->dbb_r_lc_messages) |
| 1182 | { |
| 1183 | sprintf(output_buffer, |
| 1184 | "%sCALL ISC_MODIFY_DPB (%s, %s, isc_dpb_lc_messages, %s, %sLEN(%s)%s)\n", |
| 1185 | COLUMN, |
| 1186 | s2, s1, db->dbb_r_lc_messages, |
| 1187 | I2CONST_1, db->dbb_r_lc_messages, I2CONST_2); |
| 1188 | FTN_print_buffer(output_buffer); |
| 1189 | } |
| 1190 | if (db->dbb_r_lc_ctype) |
| 1191 | { |
| 1192 | sprintf(output_buffer, |
no test coverage detected