Дата актуализации: 07.11.2024.
Таблица address | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | В случае заполнения поле use_address должно содержать одно из целочисленных значений от 1 до 5 | ADDRESS_USE_ADDRESS_INVALID_VALUE | select tb1."id" from datamart.address as tb1 where tb1.use_address is not null and tb1.use_address not in (1, 2, 3, 4, 5) |
CHECK2 | Поле type_address должно содержать одно из целочисленных значений от 1 до 5 | ADDRESS_TYPE_ADDRESS_INVALID_VALUE | select tb1."id" from datamart.address as tb1 where tb1.type_address not in (1, 2, 3, 4, 5) |
CHECK3 | Поле text должно соответствовать следующим условиям:
| ADDRESS_TEXT_INVALID_FORMAT | Пример запроса |
Таблица applications | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле type_code должно содержать одно из допустимых значений:
| APPLICATION_TYPE_CODE_INVALID_VALUE | select tb1."id" as "applications_id" from datamart.applications as tb1 where tb1.type_code not in ( 'personally', 'representative', 'post', 'email', 'courier', 'rpgu', 'phone', 'epgu'); |
CHECK2 | Поле type_code должно содержать одно из целочисленных значений от 1 до 8 | APPLICATION_TYPE_VALUE_INVALID | select tb1."id" as "applications_id" from datamart.applications as tb1 where tb1.type_value not in (1, 2, 3, 4, 5, 6, 7, 8) |
CHECK3 | Поле code не должно содержать пробел, допустимая длина не менее 1 символа | APPLICATION_CODE_INVALID_FORMAT | Пример запроса |
CHECK4 | Поле name должно соответствовать следующим условиям: | APPLICATION_NAME_INVALID_FORMAT | Пример запроса |
CHECK5 | Поле firstname должно соответствовать следующим условиям:
| APPLICATION_FIRSTNAME_INVALID_FORMAT | Пример запроса |
CHECK6 | Поле lastname должно соответствовать следующим условиям:
| APPLICATION_LASTNAME_INVALID_FORMAT | Пример запроса |
CHECK7 | Если поле patronymic должно соответствовать следующим условиям:
| APPLICATION_PATRONYMIC_INVALID_FORMAT | Пример запроса |
Таблица application_status | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле code должно содержать одно из допустимых значений:
| APPLICATION_STATUS_CODE_INVALID_VALUE | select tb1."id"from datamart.application_status as tb1 where tb1.code not in ('1','3','4','6','7','14','15','25','9','10','11') |
Таблица adaptation | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле code должно содержать одно из допустимых значений:
| select tb1."id" as "id" from datamart.adaptation as tb1 where tb1.code not in (1, 12, 14, 2, 22, 24, 3, 32, 4, 42, 5, 52, 6, 61, 7, 72) |
Таблица change_details | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле type_change должно содержать значения от 1 до 8 | select tb1."id" as "change_details_id"from datamart.change_details as tb1 where tb1.type_change not in (1, 2, 3, 4, 5, 6, 7, 8) |
Таблица changes_event_school | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле type_event должно содержать одно из целочисленных значений от 1 до 22 | EVENT_SCHOOL_TYPE_EVENT_INVALID_VALUE | select tb1."id" from datamart.changes_event_school as tb1 where tb1.type_event not in (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22) |
Таблица changes_event_student | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле type_event должно содержать одно из целочисленных значений от 1 до 18 | EVENT_STUDENT_TYPE_EVENT_INVALID_VALUE | select tb1."id" as "changes_event_student_id" from datamart.changes_event_student as tb1 where tb1.type_event not in ( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18 ) |
CHECK2 | В случае заполнения поле reason должно содержать одно из целочисленных значений от 1 до 9, а также 90 или 99 | EVENT_STUDENT_REASON_INVALID_VALUE | select tb1."id" as "changes_event_student_id"from datamart.changes_event_student as tb1 where tb1.reason is not null and tb1.reason not in (1, 2, 3, 4, 5, 6, 7, 8, 9, 90, 99) |
CHECK3 | В случае заполнения поле doc_type должно
содержать одно из допустимых значений:
| EVENT_STUDENT_DOC_TYPE_INVALID_VALUE | select tb1."id" as "changes_event_student_id" from datamart.changes_event_student as tb1 where tb1.doc_type is not null and tb1.doc_type not in (10, 20, 30, 40, 50) |
Таблица changes_event_teacher | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле type_event должно содержать одно из целочисленных значений от 1 до 21 | EVENT_TEACHER_TYPE_EVENT_INVALID_VALUE | select tb1."id" from datamart.changes_event_teacher as tb1 where tb1.type_event not in ( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21 ) |
CHECK2 | В случае заполнения поле reason должно содержать одно из
целочисленных значений от 1 до 42, а также 90 или 99 | EVENT_TEACHER_REASON_INVALID_VALUE | select tb1."id" from datamart.changes_event_teacher as tb1 where tb1.reason is not null and tb1.reason not in ( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 90, 99 ) |
CHECK3 | В случае заполнения поле doc_type должно содержать одно из
допустимых значений:
| EVENT_TEACHER_DOC_TYPE_INVALID_VALUE | select tb1."id" from datamart.changes_event_teacher as tb1 where tb1.doc_type is not null and tb1.doc_type not in (10, 20, 30, 40, 50) |
Таблица classes_periods | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле school_name не должно содержать пробел, допустимая длина не менее 2 символов | STUDENT_CP_SCHOOL_NAME_INVALID_FORMAT | Пример запроса |
CHECK2 | Поле class_num должно содержать целочисленное значение не больше 12 | STUDENT_CP_CLASS_NUM_GRATER_THAN_TWELVE | SELECT tb1."period_id", tb1."class_id", tb1."student_id" from datamart.classes_periods as tb1 where tb1.class_num > 12 |
CHECK3 | Разница значения года поля period_start_date со значением поля class_year_from должна быть равна 0 или
1 | STUDENT_CP_START_DATE_CLASS_YEAR_DIFFERENCE_INVALID | SELECT tb1."period_id", tb1."class_id", tb1."student_id" from datamart.classes_periods as tb1 where (CAST(EXTRACT( YEAR FROM tb1.period_start_date ) AS INT) - tb1.class_year_from) not in (0, 1) |
CHECK4 | Разница значения года поля period_end_date со значением поля class_year_from должна быть равна 0 или
1 | STUDENT_CP_END_DATE_CLASS_YEAR_DIFFERENCE_INVALID | SELECT tb1."period_id", tb1."class_id", tb1."student_id" from datamart.classes_periods as tb1 where (CAST(EXTRACT( YEAR FROM tb1.period_end_date ) AS INT) - tb1.class_year_from) not in (0, 1) |
CHECK5 | Поле period_type_code должно содержать одно из допустимых значений:
| STUDENT_CP_PERIOD_TYPE_CODE_INVALID_VALUE | SELECT tb1."period_id", tb1."class_id", tb1."student_id" from datamart.classes_periods as tb1 where tb1.period_type_code not in ('quarter', 'modul', 'trimester', 'halfyear') |
CHECK6 | Поле period_type_value должно содержать одно из допустимых значений:
| STUDENT_CP_PERIOD_TYPE_VALUE_INVALID | SELECT tb1."period_id", tb1."class_id", tb1."student_id" from datamart.classes_periods as tb1 where tb1.period_type_value not in (1, 2, 3, 4) |
CHECK7 | Поле diary_url не должно заканчиваться символом / | STUDENT_CP_DIARY_URL_STARTS_WITH_SLASH | SELECT tb1."period_id", tb1."class_id", tb1."student_id" from datamart.classes_periods as tb1 where tb1.diary_url like '%/' |
CHECK8 | Разница значения года поля class_start_date со значением поля class_year_from должна быть равна 0 или 1 | STUDENT_CP_CLASS_START_YEAR_DIFFERENCE_INVALID | SELECT tb1."period_id", tb1."class_id", tb1."student_id" from datamart.classes_periods as tb1 where (CAST(EXTRACT(YEAR FROM class_start_date) AS INT) - tb1.class_year_from) NOT IN (0, 1) |
CHECK9 | Поле subjects_count должно содержать целочисленное значение от 1 и более | STUDENT_CP_SUBJECT_COUNT_LESS_THAN_ZERO | SELECT tb1."period_id", tb1."class_id", tb1."student_id" from datamart.classes_periods as tb1 where tb1.subjects_count <= 0 |
CHECK10 | Поле attendance должно
содержать одно из допустимых значений:
| STUDENT_CP_ATTENDANCE_INVALID_VALUE | SELECT tb1."period_id", tb1."class_id", tb1."student_id" from datamart.classes_periods as tb1 where tb1.attendance not in ('resident', 'part-time', 'extramural', 'family', 'self-education', 'no_data') |
CHECK11 | В случае заполнения поле edu_program_name должно
содержать одно из допустимых значений:
| STUDENT_CP_PROGRAM_NAME_INVALID_VALUE | SELECT tb1."period_id", tb1."class_id", tb1."student_id" from datamart.classes_periods as tb1 where (tb1.edu_program_name is not NULL and tb1.edu_program_name not in ('elementary', 'basic', 'secondary', 'additional')) |
CHECK12 | Поле timezone должно быть заполнено в формате +ЧЧ:ММ или -ЧЧ:ММ | STUDENT_CP_TIMEZONE_INVLID_FORMAT | Пример запроса |
CHECK13 | Поле class_num должно содержать целочисленное значение не меньше 1 | STUDENT_CP_CLASS_NUM_LESS_THAN_ONE | SELECT tb1."period_id", tb1."class_id", tb1."student_id" from datamart.classes_periods as tb1 where tb1.class_num < 1 |
Таблица colleges | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле full_name не должно содержать пробел, допустимая длина не менее 2 символов | Пример запроса | |
CHECK2 | Поле short_name не должно содержать пробел, допустимая длина не менее 2 символов | Пример запроса | |
CHECK3 | Поле timezone должно быть заполнено в формате +ЧЧ:ММ или -ЧЧ:ММ | Пример запроса | |
CHECK4 | Поле type_code должно
содержать одно из допустимых значений:
| SELECT tb1."id" from datamart.colleges as tb1 where tb1.type_code not in ( 'main_edu', 'common_edu', 'higher_edu', 'spo_edu' ) | |
CHECK5 | Поле type_value должно содержать одно из целочисленных значений от 1 до 4 | SELECT tb1."id" from datamart.colleges as tb1 where tb1.type_value is not NULL and tb1.type_value not in (1, 2, 3, 4) | |
CHECK6 | Поле status_code должно
содержать одно из допустимых значений:
| SELECT tb1."id" from datamart.colleges as tb1 where tb1.status_code not in ('active', 'cancelled', 'entered-in-error') | |
CHECK7 | Поле status_value должно содержать одно из целочисленных значений от 1 до 3 | SELECT tb1."id" from datamart.colleges as tb1 where tb1.status_value not in (1, 2, 3) |
Таблица commonplanmarks | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле class_num должно содержать целочисленное значение не меньше 1 | STUDENT_CPM_CLASS_NUM_LESS_THAN_ONE | SELECT tb1."period_id" as "commonplanmarks_id", tb1."student_id" as "commonplanmarks_student_id" from datamart.commonplanmarks as tb1 where tb1.class_num < 1 |
CHECK2 | Поле class_num должно содержать целочисленное значение не больше 12 | STUDENT_CPM_CLASS_NUM_GRATER_THAN_TWELVE | SELECT tb1."period_id" as "commonplanmarks_id", tb1."student_id" as "commonplanmarks_student_id" from datamart.commonplanmarks as tb1 where tb1.class_num > 12 |
CHECK3 | Поле class_year_from должно содержать целочисленное значение не меньше 2010 | STUDENT_CPM_CLASS_YEAR_LESS_THAN_LOWER_LIMIT | SELECT tb1."period_id" as "commonplanmarks_id", tb1."student_id" as "commonplanmarks_student_id" from datamart.commonplanmarks as tb1 where tb1.class_year_from < 2010 |
CHECK4 | Поле class_year_from должно содержать целочисленное значение не больше 2030 | STUDENT_CPM_CLASS_YEAR_GREATER_THAN_UPPER_LIMIT | SELECT tb1."period_id" as "commonplanmarks_id", tb1."student_id" as "commonplanmarks_student_id" from datamart.commonplanmarks as tb1 where tb1.class_year_from > 2030 |
CHECK5 | Поле mark_scale_code должно
содержать одно из допустимых значений:
| STUDENT_CPM_MARK_SCALE_CODE_INVALID_VALUE | SELECT tb1."period_id" as "commonplanmarks_id", tb1."student_id" as "commonplanmarks_student_id" from datamart.commonplanmarks as tb1 where tb1.mark_scale_code not in ('5-points', '10-points', '100-points', 'rating', 'pass/fail', 'nomarks', '7-points', '12-points') |
CHECK6 | Поле mark_scale_value должно содержать одно из целочисленных значений от 1 до 8 | STUDENT_CPM_MARK_SCALE_VALUE_INVALID | SELECT tb1."period_id" as "commonplanmarks_id", tb1."student_id" as "commonplanmarks_student_id" from datamart.commonplanmarks as tb1 where tb1.mark_scale_value not in (1, 2, 3, 4, 5, 6, 7, 8) |
Таблица diaries | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле name не должно содержать пробел, допустимая длина не менее 2 символов | Пример запроса | |
CHECK2 | Запись в поле url должна начинаться с https:// | SELECT tb1."id" from datamart.diaries as tb1 where tb1.url not like 'https://%' | |
CHECK3 | Поле url не должно заканчиваться символом / | SELECT tb1."id" from datamart.diaries as tb1 where url like '%/' | |
CHECK4 | Поле esia_mnemonic не должно содержать пробел, допустимая длина не менее 2 символов | Пример запроса |
Таблица с | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле doc_type должно содержать одно из допустимых значений:
| select tb1."id", tb1."num" from datamart.documents as tb1 where tb1.doc_type not in (1, 2, 3) |
Таблица economy_activity | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле code не должно содержать пробел, допустимая длина не менее 1 символа | Пример запроса |
Таблица edu_groups | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле version не должно содержать пробел, допустимая длина не менее 1 символа | EDU_GROUP_VERSION_INVALID_FORMAT | Пример запроса |
CHECK2 | Поле academ_year должно содержать целочисленное значение не меньше 2021 | EDU_GROUP_ACADEM_YEAR_LESS_THAN_LOWER_LIMIT | SELECT tb1."uri" from datamart.edu_groups as tb1 where tb1.academ_year < 2021 |
CHECK3 | Поле academ_year должно содержать целочисленное значение не больше 2030 | EDU_GROUP_ACADEM_YEAR_GREATER_THAN_UPPER_LIMIT | SELECT tb1."uri" from datamart.edu_groups as tb1 where tb1.academ_year > 2030 |
CHECK4 | Поле total_places не должно содержать значение меньше 0 | EDU_GROUP_TOTAL_PLACES_BELOW_ZERO | SELECT tb1."uri" from datamart.edu_groups as tb1 where tb1.total_places < 0 |
CHECK5 | Поле total_places должно содержать одно из целочисленных значений от 1 до 3 | EDU_GROUP_STATUS_INVALID_VALUE | SELECT tb1."uri" from datamart.edu_groups as tb1 where tb1."status" not in (1, 2, 3) |
Таблица events | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле name не должно содержать пробел, допустимая длина не менее 2 символов | Пример запроса | |
CHECK2 | Поле type_code должно содержать одно из допустимых значений:
| SELECT tb1."student_id", tb1."event_id"from datamart.events as tb1 where tb1.type_code not in ( 'parent_teacher', 'parents_evening', 'calendar', 'cw', 'other' ) | |
CHECK3 | Поле type_value должно содержать одно из целочисленных значений от 1 до 5 | SELECT tb1."student_id", tb1."event_id" from datamart.events as tb1 where tb1.type_value not in (1, 2, 3, 4, 5) | |
CHECK4 | Поле status_code должно содержать одно из допустимых значений:
| SELECT tb1."student_id", tb1."event_id"from datamart.events as tb1 where tb1.status_code not in ('active', 'cancelled', 'passed') | |
CHECK5 | Поле status_value должно содержать одно из целочисленных значений от 1 до 3 | SELECT tb1."student_id", tb1."event_id" from datamart.events as tb1 where tb1.status_value not in (1, 2, 3) | |
CHECK6 | Поле timezone должно быть заполнено в формате +ЧЧ:ММ или -ЧЧ:ММ | Пример запроса |
Таблица groupss | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле type_groupss должно содержать одно из допустимых значений:
| GROUP_TYPE_INVALID_VALUE | SELECT tb1."id" from datamart.groupss as tb1 where tb1.type_groupss not in ('school', 'department', 'parallel', 'class', 'group') |
CHECK2 | Поле status должно содержать одно из допустимых значений:
| GROUP_STATUS_INVALID_VALUE | SELECT tb1."id" from datamart.groupss as tb1 where tb1.status not in ('active', 'cancelled', 'entered-in-error') |
CHECK3 | Поле reason должно содержать одно из допустимых значений:
| GROUP_REASON_INVALID_VALUE | SELECT tb1."id" from datamart.groupss as tb1 where tb1.reason not in ( 'reduction', 'extentsion', 'restructuring', 'new_year', 'other' ) |
Таблица homeworks | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле description не должно содержать пробел, допустимая длина не менее 1 символа | HOMEWORK_DESCRIPTION_INVALID_FORMAT | Пример запроса |
Таблица ind_businessman_link | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле assurance должно содержать одно из целочисленных значений от 1 до 4 | IND_BUSINESSMAN_LINK_ASSURANCE_INVALID_VALUE | select tb1."ind_businessman_id", tb1."linked_ind_businessman_id", tb1."assurance"from datamart.ind_businessman_link as tb1 where tb1.assurance not in (1, 2, 3, 4) |
Таблица students_link | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле assurance должно содержать одно из целочисленных значений от 1 до 4 | STUDENT_LINK_ASSURANCE_INVALID_VALUE | select tb1."student_id" as "students_link_student_id" from datamart.students_link as tb1 where tb1.assurance not in (1,2,3,4) |
Таблица lesson_plan | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле lesson_theme не должно содержать пробел, допустимая длина не менее 2 символов | LESSON_PLAN_LESSON_THEME_INVALID_FORMAT | Пример запроса |
CHECK2 | Поле lesson_number должно содержать одно из целочисленных значений не менее 1 | LESSON_PLAN_LESSON_NUMBER_LESS_THAN_ONE | SELECT tb1."id" as "lesson_plan_id" from datamart.lesson_plan as tb1 where tb1.lesson_number < 1 |
Таблица lessons | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле subject_name не должно содержать пробел, допустимая длина не менее 2 символов | LESSON_SUBJECT_NAME_INVALID_FORMAT | Пример запроса |
Таблица lessonscount | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Значение в поле lessons_count должно быть меньше суммы значений полей not_allowed_skippings_count и sick_day_count | STUDENT_LESSONS_COUNT_EXCEEDS_SKIPS_SUM | SELECT tb1."period_id", tb1."student_id", tb1."subject_id" from datamart.lessonscount as tb1 where tb1.lessons_count < ( tb1.allowed_skippings_count + tb1.not_allowed_skippings_count + tb1.sick_day_count ) |
CHECK2 | Поле subject_name не должно содержать пробел, допустимая длина не менее 2 символов | STUDENT_LC_SUBJECT_NAME_INVALID_FORMAT | Пример запроса |
Таблица location_function_type | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле code не должно содержать пробел, допустимая длина не менее 1 символа | LOCATION_FUNCTION_TYPE_CODE_INVALID_FORMAT | Пример запроса |
CHECK2 | Поле name не должно содержать пробел, допустимая длина не менее 1 символа | LOCATION_FUNCTION_TYPE_NAME_INVALID_FORMAT | Пример запроса |
Таблица location_properties | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле code должно содержать одно из целочисленных значений от 1 до 33 или 99 | SELECT tb1."id" as "location_properties_id"from datamart.location_properties as tb1 where tb1.code not in (1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 99) | |
CHECK2 | В случае заполнения поле type_location должно содержать одно из целочисленных значений от 1 до 7 | SELECT tb1."id" as "location_properties_id" from datamart.location_properties as tb1 where tb1.type_location is not null and tb1.type_location not in (1, 2, 3, 4, 5, 6, 7) |
Таблица marks | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле subject_name не должно содержать пробел, допустимая длина не менее 2 символов | MARK_M_SUBJECT_NAME_INVALID_FORMAT | Пример запроса |
CHECK2 | Поле work_type_code должно содержать одно из допустимых значений:
| MARK_M_WORK_TYPE_CODE_INVALID_VALUE | SELECT tb1."id"from datamart.marks as tb1 where lower(tb1.work_type_code) not in ('test', 'ordinary') |
CHECK3 | Поле work_type_value должно содержать одно из допустимых значений:
| MARK_M_WORK_TYPE_VALUE_INVALID | SELECT tb1."id" from datamart.marks as tb1 where tb1.work_type_value not in (1, 2) |
CHECK4 | Поле scale_code должно содержать одно из допустимых значений:
| MARK_M_SCALE_CODE_INVALID_VALUE | SELECT tb1."id" from datamart.marks as tb1 where tb1.scale_code not in ( '5-points', '10-points', '100-points', 'rating', 'pass/fail', 'nomarks', '7-points', '12-points' ) |
CHECK5 | Поле scale_value должно содержать одно из целочисленных значений от 1 до 8 | MARK_M_SCALE_VALUE_INVALID | SELECT tb1."id"from datamart.marks as tb1 where scale_value not in (1, 2, 3, 4, 5, 6, 7, 8) |
CHECK6 | Поле class_num должно содержать целочисленное значение не меньше 1 | MARK_M_CLASS_NUM_LESS_THAN_ONE | SELECT tb1."id"from datamart.marks as tb1 where tb1.class_num < 1 |
CHECK7 | Поле class_num должно содержать целочисленное значение не больше 12 | MARK_M_CLASS_NUM_GRATER_THAN_TWELVE | SELECT tb1."id"from datamart.marks as tb1 where tb1.class_num > 12 |
Таблица materials | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле name не должно содержать пробел, допустимая длина не менее 3 символов | MATERIAL_NAME_INVALID_FORMAT | Пример запроса |
CHECK2 | В поле size не должны быть значения меньше 0 | MATERIAL_SIZE_LESS_THAN_ZERO | SELECT tb1."id" as "materials_id" from datamart.materials as tb1 where tb1.size<0 |
CHECK3 | Поле link не должно содержать пробел, допустимая длина не менее 3 символов | MATERIAL_LINK_INVALID_FORMAT | Пример запроса |
Таблица operators_systems | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле name_operator не должно содержать пробел, допустимая длина не менее 1 символа | OPERATOR_SYSTEM_NAME_INVALID_FORMAT | Пример запроса |
CHECK2 | Поле doc_operator не должно содержать пробел, допустимая длина не менее 1 символа | OPERATOR_SYSTEM_DOC_INVALID_FORMAT | Пример запроса |
Таблица org_alias | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле other_value не должно содержать пробел, допустимая длина не менее 1 символа | ORG_ALIASOTHER_VALUE_INVALID_FORMAT | Пример запроса |
Таблица organisations | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле ogrn должно содержать только цифры длиной в 13 знаков | ORGANISATION_OGRN_INVALID_FORMAT | Пример запроса |
CHECK2 | Поле inn должно содержать только цифры длиной в 10 знаков | ORGANISATION_INN_INVALID_FORMAT | Пример запроса |
CHECK3 | Поле kpp должно содержать только цифры длиной в 9 знаков | ORGANISATION_KPP_INVALID_FORMAT | Пример запроса |
CHECK4 | Поле name не должно содержать пробел, допустимая длина не менее 2 символов | ORGANISATION_NAME_INVALID_FORMAT | Пример запроса |
CHECK5 | Поле executive_name не должно содержать пробел, допустимая длина не менее 2 символов | ORGANISATION_EXECUTIVE_NAME_INVALID_FORMAT | Пример запроса |
CHECK6 | Поле executive_position не должно содержать пробел, допустимая длина не менее 2 символов | ORGANISATION_EXECUTIVE_POSITION_INVALID_FORMAT | Пример запроса |
CHECK7 | Поле phone не должно содержать пробел, допустимая длина не менее 5 символов | ORGANISATION_PHONE_INVALID_FORMAT | Пример запроса |
Таблица organisation_unit | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле name не должно содержать пробел, допустимая длина не менее 1 символа | ORGANISATION_UNIT_NAME_INVALID_FORMAT | Пример запроса |
Таблица payload | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле name не должно содержать пробел, допустимая длина не менее 1 символа | Пример запроса | |
CHECK2 | Поле description не должно содержать пробел, допустимая длина не менее 1 символа | Пример запроса |
Таблица persons | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле firstname не должно содержать пробел, допустимая длина не менее 1 символа | PERSON_FIRSTNAME_INVALID_FORMAT | Пример запроса |
CHECK2 | Поле lastname не должно содержать пробел, допустимая длина не менее 1 символа | PERSON_LASTNAME_INVALID_FORMAT | Пример запроса |
CHECK3 | В случае заполнения поле patronymic не должно содержать пробел, допустимая длина не менее 1 символа | PERSON_PATRONYMIC_INVALID_FORMAT | Пример запроса |
Таблица pmarks | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле subject_name не должно содержать пробел, допустимая длина не менее 2 символов | MARK_PM_SUBJECT_NAME_INVALID_FORMAT | Пример запроса |
CHECK2 | В случае заполнения поле fivepoint_fact должно содержать целые числа или дробные через точку | MARK_PM_FIVEPOINT_FACT_INVALID_FORMAT | Пример запроса |
CHECK3 | В случае заполнения поле fivepoint_recent_plan должно содержать целые числа или дробные через точку | MARK_PM_FIVEPOINT_FINAL_FACT_INVALID_FORMAT | Пример запроса |
CHECK4 | Поле class_num должно содержать целочисленное значение не меньше 1 | MARK_PM_CLASS_NUM_LESS_THAN_ONE | SELECT tb1."id"from datamart.pmarks as tb1 where tb1.class_num < 1 |
CHECK5 | Поле class_num должно содержать целочисленное значение не больше 12 | MARK_PM_CLASS_NUM_GRATER_THAN_TWELVE | SELECT tb1."id"from datamart.pmarks as tb1 where tb1.class_num > 12 |
CHECK6 | Поле mark_scale_code должно содержать одно из допустимых значений:
| MARK_PM_MARK_SCALE_CODE_INVALID_VALUE | SELECT tb1."id"from datamart.pmarks as tb1 where tb1.mark_scale_code not in ('5-points', '10-points', '100-points', 'rating', 'pass/fail', 'nomarks', '7-points', '12-points') |
CHECK7 | Поле mark_scale_value должно содержать одно из целочисленных значений от 1 до 8 | MARK_PM_MARK_SCALE_VALUE_INVALID | SELECT tb1."id"from datamart.pmarks as tb1 where tb1.mark_scale_value not in (1, 2, 3, 4, 5, 6, 7, 8) |
Таблица position_list | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле version не должно содержать пробел, допустимая длина не менее 1 символа | POSITION_LIST_VERSION_INVALID_FORMAT | Пример запроса |
CHECK2 | Поле academ_year_le_2021 должно содержать целочисленное значение не меньше 2021 | POSITION_LIST_ACADEM_YEAR_LESS_THAN_LOWER_LIMIT | SELECT tb1."uri" as "position_list_uri" from datamart.position_list as tb1 where tb1.academ_year < 2021 |
CHECK3 | Поле academ_year_ge_2030 должно содержать целочисленное значение не больше 2030 | POSITION_LIST_ACADEM_YEAR_GREATER_THAN_UPPER_LIMIT | SELECT tb1."uri" as "position_list_uri"from datamart.position_list as tb1 where tb1.academ_year > 2030 |
CHECK4 | Поле status должно содержать одно из целочисленных значений от 1 до 3 | POSITION_LIST_STATUS_INVALID_VALUE | SELECT tb1."uri" as "position_list_uri" from datamart.position_list as tb1 where tb1.status not in (1, 2, 3) |
CHECK5 | Поле reason_code должно содержать одно из допустимых значений:
| POSITION_LIST_REASON_CODE_INVALID_VALUE | SELECT tb1."uri" as "position_list_uri" from datamart.position_list as tb1 where tb1.reason_code not in ('personal_reduction', 'personal_extension', 'position_rename', 'salary_change', 'unit_change', 'org_change', 'academ_year_change', 'other') |
CHECK6 | Поле reason_value должно содержать одно из целочисленных значений от 1 до 8 | POSITION_LIST_REASON_VALUE_INVALID | SELECT tb1."uri" as "position_list_uri" from datamart.position_list as tb1 where tb1 tb1.reason_value not in (1, 2, 3, 4, 5, 6, 7, 8) |
Таблица positions | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле name не должно содержать пробел, допустимая длина не менее 2 символов | POSITION_NAME_INVALID_FROMAT | Пример запроса |
CHECK2 | Поле fte должно содержать значение не меньше 0 | POSITION_FTE_LESS_THAN_ZERO | SELECT tb1."code" from datamart.positions as tb1 where tb1.fte < 0 |
Таблица qualification | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле type_qualification должно содержать одно из целочисленных значений от 1 до 15 | QUALIFICATION_TYPE_INVALID_VALUE | SELECT tb1."id" from datamart.qualification as tb1 where tb1.type_qualification not in ( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 ) |
CHECK2 | В случае заполнения поле code должно содержать одно из целочисленных значений от 1 до 3 | QUALIFICATION_CODE_INVALID_VALUE | SELECT tb1."id" from datamart.qualification as tb1 where tb1.code is not null and tb1.code not in (1, 2, 3) |
CHECK3 | Поле status_code должно содержать одно из допустимых значений:
| QUALIFICATION_STATUS_CODE_INVALID_VALUE | SELECT tb1."id" from datamart.qualification as tb1 where tb1.status_code not in ('active', 'retired', 'entered-in-error') |
CHECK4 | В случае заполнения поле status_value должно содержать одно из целочисленных значений от 1 до 3 | QUALIFICATION_STATUS_VALUE_INVALID | SELECT tb1."id" from datamart.qualification as tb1 where tb1.status_value is not null and tb1.status_value not in (1, 2, 3) |
CHECK5 | В случае заполнения поле reason_code должно содержать одно из допустимых значений:
| QUALIFICATION_REASON_CODE_INVALID_VALUE | SELECT tb1."id" from datamart.qualification as tb1 where tb1.reason_code is not null and tb1.reason_code not in ( 'education', 'retraining', 'qualification', 'attestation', 'reward', 'teacher_experience', 'attestation_comission', 'education_ministry_decision', 'ron_decision', 'court_decision', 'authorized_decision' ) |
CHECK6 | В случае заполнения поле reason_value должно содержать одно из целочисленных значений от 1 до 11 | QUALIFICATION_REASON_VALUE_INVALID | SELECT tb1."id" from datamart.qualification as tb1 where tb1.reason_value is not null and tb1.reason_value not in (1, 2, 3, 4, 5, 6, 7, 8,9, 10, 11) |
Таблица region_systems | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле name_system не должно содержать пробел, допустимая длина не менее 1 символа | REGION_SYSTEMNAME_INVALID_FORMAT | Пример запроса |
CHECK2 | Поле owner_system не должно содержать пробел, допустимая длина не менее 1 символа | REGION_SYSTEM_OWNER_INVALID_FORMAT | Пример запроса |
CHECK3 | Поле doc_owner не должно содержать пробел, допустимая длина не менее 1 символа | REGION_SYSTEM_DOC_INVALID_FORMAT | Пример запроса |
Таблица representative_citizenship | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле code должно содержать одно из допустимых значений: ABH, AUS, AUT, AZE, ALB, DZA, ASM, AIA, AGO, AND, ATA, ATG, ARG, ARM, ABW, AFG, BHS, BGD, BRB, BHR, BLR, BLZ, BEL, BEN, BMU, BGR, BOL, BES, BIH, BWA, BRA, IOT, BRN, BFA, BDI, BTN, VUT, HUN, VEN, VGB, VIR, VNM, GAB, GUY, HTI, GMB, GHA, GLP, GT M, GIN, GNB, DEU, GGY, GIB, HND, HKG, GRD, GRL, GRC, GEO, GUM, DNK, JEY, DJI, DNR, DMA, DOM, EGY, ZMB, ESH, ZWE, YEM, I SR, IND, IDN, JOR, IRQ, IRN, IRL, ISL, ESP, ITA, CPV, KAZ, KHM, CMR, CAN, QAT, KEN, CYP, KGZ, KIR, CHN, CCK, COL, COM, COG, C OD, PRK, KOR, CRI, CIV, CUB, KWT, CUW, LAO, LVA, LSO, LBR, LBN, LBY, LTU, LIE, LNR, LUX, MUS, MRT, MDG, MYT, MAC, MWI, MY S, MLI, UMI, MDV, MLT, MAR, MTQ, MHL, MEX, FSM, MOZ, MDA, MCO, MNG, MSR, MMR, NAM, NRU, NPL, NER, NGA, NLD, NIC, NIU, N ZL, NCL, NOR, ARE, OMN, BVT, IMN, NFK, CXR, HMD, CYM, COK, TCA, PAK, PLW, PSE, PAN, VAT, PNG, PRY, PER, PCN, POL, PRT, P RI, MKD, REU, RUS, RWA, ROU, WSM, SMR, STP, SAU, SWZ, SHN, MNP, SYC, BLM, SEN, MAF, SXM, VCT, KNA, LCA, SPM, SRB, SGP, SYR, SVK, SVN, GBR, GBD, GBN, GBO, GBP, GBS, USA, SLB, SOM, SDN, SUR, SLE, TJK, TWN, THA, TZA, TLS, TGO, TKL, TON, TTO, TUV, TUN, TKM, TUR, UGA, UZB, UKR, WLF, URY, FRO, FJI, PHL, FIN, FLK, FRA, GUF, PYF, ATF, HRV, CAF, TCD, MNE, CZE, CHL, CH E, SWE, SJM, LKA, ECU, GNQ, ALA, SLV, ERI, EST, ETH, ZAF, OST, SGS, SSD, JAM, JPN, EUE, XXA, XXB, XXC, XXX | CITIZENSHIP_RE_COUNTRY_CODE_INVALID_VALUE | Пример запроса |
CHECK2 | Поле name не должно содержать пробел, допустимая длина не менее 2 символов | CITIZENSHIP_RE_COUNTRY_NAME_INVALID_FORMAT | Пример запроса |
Таблица representative_link | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле assurance должно содержать одно из целочисленных значений от 1 до 4 | REPRESENTATIVELINK_ASSURANCE_INVALID_VALUE | SELECT tb1."representative_id", tb1."linked_representative_id" from datamart.representative_link as tb1 where tb1.assurance not in (1, 2, 3, 4) |
Таблица representatives | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле auth_link не должно начинаться с символа / | REPRESENTATIVE_AUTH_LINK_STARTS_WITH_SLASH | SELECT tb1."id" as "representatives_id" from datamart.representatives as tb1 where tb1.auth_link like '/%' |
CHECK2 | Поле firstname должно соответствовать следующим условиям:
| REPRESENTATIVE_FIRST_NAME_INVALID_FORMAT | Пример запроса |
CHECK3 | Поле lastname должно соответствовать следующим условиям:
| REPRESENTATIVE_LAST_NAME_INVALID_FORMAT | Пример запроса |
CHECK4 | Если поле patronymic должно соответствовать следующим условиям:
| REPRESENTATIVE_PATRONYMIC_INVALID_FORMAT | Пример запроса |
CHECK5 | Поле gender_code должно содержать одно из допустимых значений:
| REPRESENTATIVE_GENDER_CODE_INVALID_VALUE | SELECT tb1."id" as "representatives_id" from datamart.representatives as tb1 where tb1.gender_code not in ('male', 'female') |
CHECK6 | Поле gender_value должно содержать одно из допустимых значений:
| REPRESENTATIVE_GENDER_VALUE_INVALID | SELECT tb1."id" as "representatives_id" from datamart.representatives as tb1 where tb1.gender_value not in (1, 2) |
Таблица restriction | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 |
| SELECT rest.id from datamart.restriction as rest WHERE rest.type_restriction not in (1,2) or rest.rationale not in ('by_court_decision','criminal_record','conviction','incapable','medicine_reasons','not_defined') | |
CHECK2 | Поле status_code должно содержать одно из допустимых значений:
| SELECT rest.id from datamart.restriction as rest WHERE rest.status_code not in ('active','retired','entered-in-error') | |
CHECK3 | В случае заполнения поле status_value должно содержать одно из целочисленных значений от 1 до 3 | SELECT rest.id from datamart.restriction as rest WHERE rest.status_value is not null and rest.status_value not in (1,2,3) | |
CHECK4 | В случае заполнения поле reason_code должно содержать одно из допустимых значений:
| SELECT rest.id from datamart.restriction as rest WHERE rest.reason_code is not null and rest.reason_code not in ('court_decision','criminal_case','medicine_doc','underage_comission_decision','criminal_case_termination') | |
CHECK5 | В случае заполнения поле reason_value должно содержать одно из целочисленных значений от 1 до 5 | SELECT rest.id from datamart.restriction as rest WHERE rest.reason_value is not null and rest.reason_value not in (1,2,3,4,5) |
Таблица schools | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле name должно соответствовать следующим условиям:
| SCHOOL_NAME_INVALID_FORMAT | Пример запроса |
CHECK2 | Поле short_name должно соответствовать следующим условиям:
| SCHOOL_SHORT_NAME_INVALID_FORMAT | Пример запроса |
CHECK3 | Поле ogrn должно соответствовать следующим условиям:
| SCHOOL_OGRN_INVALID_FORMAT | Пример запроса |
CHECK4 | Поле inn должно соответствовать следующим условиям:
| SCHOOL_INN_INVALID_FORMAT | Пример запроса |
CHECK5 | Поле kpp должно соответствовать следующим условиям:
| SCHOOL_KPP_INVALID_FORMAT | Пример запроса |
CHECK6 | Поле timezone должно быть заполнено в формате +ЧЧ:ММ или -ЧЧ:ММ | SCHOOL_TIMEZONE_INVALID_FORMAT | Пример запроса |
CHECK7 | Поле type_code должно содержать одно из допустимых значений:
| SCHOOL_TYPE_CODE_INVALID_VALUE | SELECT sch.id from datamart.schools as sch where sch.type_code not in ('main_edu','common_edu','higher_edu','spo_edu' |
CHECK8 | В случае заполнения поле type_value должно содержать одно из целочисленных значений от 1 до 4 | SCHOOL_TYPE_VALUE_INVALID | SELECT sch.id from datamart.schools as sch where sch.type_value is not null and sch.type_value not in (1,2,3,4) |
CHECK9 | Поле status_code должно содержать одно из допустимых значений:
| SCHOOL_STATUS_CODE_INVALID_VALUE | SELECT sch.id from datamart.schools as sch where sch.status_code not in ('active','cancelled','entered-in-error') |
CHECK10 | Поле status_value должно содержать одно из целочисленных значений от 1 до 3 | SCHOOL_STATUS_VALUE_INVALID | SELECT sch.id from datamart.schools as sch where sch.status_value not in (1,2,3) |
Таблица service | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле name не должно содержать пробел, допустимая длина не менее 1 символа | Пример запроса | |
CHECK2 | Поле link не должно содержать пробел, допустимая длина не менее 3 символов | Пример запроса | |
CHECK3 | Поле status должно содержать одно из целочисленных значений от 1 до 6 | SELECT tb1."id" as "service_id" from datamart.service as tb1 WHERE tb1.status not in (1,2,3,4,5,6) |
Таблица service_organisations | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле name_service не должно содержать пробел, допустимая длина не менее 1 символа | SERVICE_ORGANISATION_NAME_INVALID_FORMAT | Пример запроса |
Таблица skippings | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле type_code должно содержать одно из допустимых значений:
| SELECT tb1."id" as "skippings_id" from datamart.skippings as tb1 WHERE tb1.type_code not in ('allowded','notallowded','sickday','lateness') | |
CHECK2 | В случае заполнения поле type_value должно содержать одно из целочисленных значений от 1 до 4 | SELECT tb1."id" as "skippings_id"from datamart.skippings as tb1 WHERE tb1.type_value is not null and tb1.type_value not in (1,2,3,4) |
Таблица speciality | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле code должно содержать целое число длиной в 2 символа или дробное в формате dd.d | SPECIALITY_CODE_INVALID_FORMAT | Пример запроса |
CHECK2 | Поле name не должно содержать пробел, допустимая длина не менее 3 символов | SPECIALITY_NAME_INVALID_FORMAT | Пример запроса |
Таблица statcommon | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | В случае заполнения поле fivepoint_total должно содержать целое число или дробное через точку | STUDENT_FIVEPOINT_TOTAL_INVALID_FORMAT | Пример запроса |
CHECK2 | В случае заполнения поле fivepoint_test должно содержать целое число или дробное через точку | STUDENT_FIVEPOINT_TEST_INVALID_FORMAT | Пример запроса |
CHECK3 | Поле class_num должно содержать целочисленное значение не меньше 1 | STUDENT_CLASS_NUM_LESS_THAN_ONE | SELECT st.period_id, st.start_of_week,st.student_id from datamart.statcommon as st where st.class_num < 1 |
CHECK4 | Поле class_num должно содержать целочисленное значение не больше 12 | STUDENT_CLASS_NUM_GRATER_THAN_TWELVE | SELECT st.period_id, st.start_of_week,st.student_id from datamart.statcommon as st where st.class_num > 12 |
CHECK5 | Поле mark_scale_code должно содержать одно из допустимых значений:
| STUDENT_MARK_SCALE_CODE_INVALID_VALUE | SELECT st.period_id, st.start_of_week,st.student_id from datamart.statcommon as st where st.mark_scale_code not in ('5-points','10-points','100-points','rating','pass/fail','nomarks','7-points','12-points') |
CHECK6 | Поле mark_scale_value должно содержать одно из целочисленных значений от 1 до 8 | STUDENT_MARK_SCALE_VALUE_INVALID | SELECT st.period_id, st.start_of_week,st.student_id from datamart.statcommon as st where st.mark_scale_value not in (1,2,3,4,5,6,7,8) ) and st.class_year_from=2023 |
Таблица statsubject | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | В случае заполнения поле fivepoint_total должно содержать целое число или дробное через точку | STUDENT_STS_FIVEPOINT_TOTAL_INVALID_FORMAT | Пример запроса |
CHECK2 | Поле fivepoint_test должно содержать целое число или дробное через точку | STUDENT_STS_FIVEPOINT_TEST_INVALID_FORMAT | Пример запроса |
CHECK3 | Поле class_num содержит целочисленное значение не меньше 1 | STUDENT_STS_CLASS_NUM_LESS_THAN_ONE | SELECT ss.student_id, ss.start_of_week, ss.subject_id, ss.period_id from datamart.statsubject as ss WHERE ss.class_num < 1 |
CHECK4 | Должны быть выполнены условия:
| STUDENT_STS_CLASS_NUM_GRATER_THAN_TWELVE | SELECT ss.student_id, ss.start_of_week, ss.subject_id, ss.period_id from datamart.statsubject as ss WHERE ss.class_num > 12 or ss.mark_scale_code not in ('5-points','10-points','100-points','rating','pass/fail','nomarks','7-points','12-points') |
CHECK5 | Поле mark_scale_value содержит одно из целочисленных значений от 1 до 8 | STUDENT_STS_MARK_SCALE_VALUE_INVALID | SELECT ss.student_id, ss.start_of_week, ss.subject_id, ss.period_id from datamart.statsubject as ss WHERE ss.mark_scale_value not in (1,2,3,4,5,6,7,8) |
Таблица student_citizenship | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле code должно содержать одно из допустимых значений: ABH, AUS, AUT, AZE, ALB, DZA, ASM, AIA, AGO, AND, ATA, ATG, ARG, ARM, ABW, AFG, BHS, BGD, BRB, BHR, BLR, BLZ, BEL, BEN, BMU, BGR, BOL, BES, BIH, BWA, BRA, IOT, BRN, BFA, BDI, BTN, VUT, HUN, VEN, VGB, VIR, VNM, GAB, GUY, HTI, GMB, GHA, GLP, GTM, GIN, GNB, DEU, GGY, GIB, HND, HKG, GRD, GRL, GRC, GEO, GUM, DNK, JEY, DJI, DNR, DMA, DOM, EGY, ZMB, ESH, ZWE, YEM, ISR, IND, IDN, JOR, IRQ, IRN, IRL, ISL, ESP, ITA, CPV, KAZ, KHM, CMR, CAN, QAT, KEN, CYP, KGZ, KIR, CHN, CCK, COL, COM, COG, COD, PRK, KOR, CRI, CIV, CUB, KWT, CUW, LAO, LVA, LSO, LBR, LBN, LBY, LTU, LIE, LNR, LUX, MUS, MRT, MDG, MYT, MAC, MWI, MYS, MLI, UMI, MDV, MLT, MAR, MTQ, MHL, MEX, FSM, MOZ, MDA, MCO, MNG, MSR, MMR, NAM, NRU, NPL, NER, NGA, NLD, NIC, NIU, NZL, NCL, NOR, ARE, OMN, BVT, IMN, NFK, CXR, HMD, CYM, COK, TCA, PAK, PLW, PSE, PAN, VAT, PNG, PRY, PER, PCN, POL, PRT, PRI, MKD, REU, RUS, RWA, ROU, WSM, SMR, STP, SAU, SWZ, SHN, MNP, SYC, BLM, SEN, MAF, SXM, VCT, KNA, LCA, SPM, SRB, SGP, SYR, SVK, SVN, GBR, GBD, GBN, GBO, GBP, GBS, USA, SLB, SOM, SDN, SUR, SLE, TJK, TWN, THA, TZA, TLS, TGO, TKL, TON, TTO, TUV, TUN, TKM, TUR, UGA, UZB, UKR, WLF, URY, FRO, FJI, PHL, FIN, FLK, FRA, GUF, PYF, ATF, HRV, CAF, TCD, MNE, CZE, CHL, CHE, SWE, SJM, LKA, ECU, GNQ, ALA, SLV, ERI, EST, ETH, ZAF, OST, SGS, SSD, JAM, JPN, EUE, XXA, XXB, XXC, XXX | CITIZENSHIP_ST_COUNTRY_CODE_INVALID_VALUE | SELECT tb1."id" as "student_citizenship_id" from datamart.student_citizenship as tb1 WHERE tb1.code not in ('ABH','AUS','AUT','AZE','ALB','DZA','ASM','AIA','AGO','AND','ATA','ATG','ARG','ARM','ABW','AFG','BHS','BGD','BRB','BHR','BLR','BLZ','BEL','BEN',' BMU','BGR','BOL','BES','BIH','BWA','BRA','IOT','BRN','BFA','BDI','BTN','VUT','HUN','VEN','VGB','VIR','VNM','GAB','GUY','HTI','GMB','GHA','GLP','GT M','GIN','GNB','DEU','GGY','GIB','HND','HKG','GRD','GRL','GRC','GEO','GUM','DNK','JEY','DJI','DNR','DMA','DOM','EGY','ZMB','ESH','ZWE','YEM','I SR','IND','IDN','JOR','IRQ','IRN','IRL','ISL','ESP','ITA','CPV','KAZ','KHM','CMR','CAN','QAT','KEN','CYP','KGZ','KIR','CHN','CCK','COL','COM','COG','C OD','PRK','KOR','CRI','CIV','CUB','KWT','CUW','LAO','LVA','LSO','LBR','LBN','LBY','LTU','LIE','LNR','LUX','MUS','MRT','MDG','MYT','MAC','MWI','MY S','MLI','UMI','MDV','MLT','MAR','MTQ','MHL','MEX','FSM','MOZ','MDA','MCO','MNG','MSR','MMR','NAM','NRU','NPL','NER','NGA','NLD','NIC','NIU','N ZL','NCL','NOR','ARE','OMN','BVT','IMN','NFK','CXR','HMD','CYM','COK','TCA','PAK','PLW','PSE','PAN','VAT','PNG','PRY','PER','PCN','POL','PRT','P RI','MKD','REU','RUS','RWA','ROU','WSM','SMR','STP','SAU','SWZ','SHN','MNP','SYC','BLM','SEN','MAF','SXM','VCT','KNA','LCA','SPM','SRB','SGP', 'SYR','SVK','SVN','GBR','GBD','GBN','GBO','GBP','GBS','USA','SLB','SOM','SDN','SUR','SLE','TJK','TWN','THA','TZA','TLS','TGO','TKL','TON','TTO',' TUV','TUN','TKM','TUR','UGA','UZB','UKR','WLF','URY','FRO','FJI','PHL','FIN','FLK','FRA','GUF','PYF','ATF','HRV','CAF','TCD','MNE','CZE','CHL','CH E','SWE','SJM','LKA','ECU','GNQ','ALA','SLV','ERI','EST','ETH','ZAF','OST','SGS','SSD','JAM','JPN','EUE','XXA','XXB','XXC','XXX') |
CHECK2 | Поле name не должно содержать пробел, допустимая длина не менее 2 символов | CITIZENSHIP_ST_COUNTRY_NAME_INVALID_FORMAT | Пример запроса |
Таблица students | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле auth_link не должно начинаться с символа / | STUDENT_AUTH_LINK_STARTS_WITH_SLASH | SELECT tb1.id as "students_id" from datamart.students as tb1 where tb1.active='TRUE' AND tb1.auth_link like '/%' |
CHECK2 | Поле firstname должно соответствовать следующим условиям:
| STUDENT_FIRST_NAME_INVALID_FORMAT | Пример запроса |
CHECK3 | Поле lastname должно соответствовать следующим условиям:
| STUDENT_LAST_NAME_INVALID_FORMAT | Пример запроса |
CHECK4 | Если поле patronymic должно соответствовать следующим условиям:
| STUDENT_PATRONYMIC_INVALID_FORMAT | Пример запроса |
CHECK5 | Поле hash_gost2012 должно содержать только символы латиницы и цифры длиной в 128 знаков | STUDENT_HASH_GOST2012_INVALID_FORMAT | SELECT tb1.id as "students_id" from datamart.students as tb1 where tb1.hash_gost2012 not similar to '[a-f0-9]{128}' |
CHECK6 | В случае заполнения поле hash_gost2012_2 должно содержать только символы латиницы и цифры длиной в 128 знаков | STUDENT_HASH_GOST2012_2_INVALID_FORMAT | SELECT tb1.id as "students_id" from datamart.students as tb1 where tb1.hash_gost2012_2 is not null and tb1.hash_gost2012_2 not similar to '[a-f0-9]{128}' |
CHECK7 | В случае заполнения поле поле hash_gost2012_3 должно содержать только символы латиницы и цифры длиной в 128 знаков | STUDENT_HASH_GOST2012_3_INVALID_FORMAT | SELECT tb1.id as "students_id" from datamart.students as tb1 where tb1.hash_gost2012_3 is not null and tb1.hash_gost2012_3 not similar to '[a-f0-9]{128}' |
CHECK8 | Поле snils должно содержать только цифры длиной в 11 знаков. Не допускаются записи, где первые 9 цифр – нули | STUDENT_SNILS_INVALID_FORMAT | Пример запроса |
CHECK9 | Поле numb_passport должно содержать только цифры длиной в 6 знаков. Не допускаются записи, где все цифры – нули | STUDENT_PASSPORT_NUMBER_INVALID_FORMAT | Пример запроса |
CHECK10 | Поле ser_passport должно соответствовать следующим условиям:
| STUDENT_PASSPORT_SERIES_INVALID_FORMAT | Пример запроса |
CHECK11 | Поле gender_code должно содержать одно из допустимых значений:
| STUDENT_GENDER_CODE_INVALID_VALUE | SELECT tb1.id as "students_id" from datamart.students as tb1 where tb1.gender_code not in ('male','female') |
CHECK12 | Поле gender_value должно содержать одно из допустимых значений:
| STUDENT_GENDER_VALUE_INVALID | SELECT tb1.id as "students_id" from datamart.students as tb1 where tb1.gender_value not in (1,2) |
CHECK13 | Поле gender_value, содержащее значение 1, должно соответствовать значению male в поле gender_value | STUDENT_GENDER_CODE_MALE_MISMATCH | SELECT tb1.id as "students_id" from datamart.students as tb1 where tb1.gender_code='male' and tb1.gender_value<>1 |
CHECK14 | Поле gender_value, содержащее значение 2, должно соответствовать значению female в поле gender_code | STUDENT_GENDER_CODE_FEMALE_MISMATCH | SELECT tb1.id as "students_id" from datamart.students as tb1 where tb1.gender_code='female' and tb1.gender_value<>2 |
CHECK15 | Поле status_code должно содержать одно из допустимых значений:
| STUDENT_STATUS_CODE_INVALID_VALUE | SELECT tb1.id as "students_id" from datamart.students as tb1 where tb1.status_code not in ('active','cancelled','entered-in-error') |
CHECK16 | Поле status_value должно содержать одно из допустимых значений:
| STUDENT_STATUS_VALUE_INVALID | SELECT tb1.id as "students_id" from datamart.students as tb1 where tb1.status_value not in (1,2,3) |
CHECK17 | Поле status_value, содержащее значение 1, должно соответствовать значению active в поле status_code | STUDENT_STATUS_CODE_ACTIVE_MISMATCH | SELECT tb1.id as "students_id" from datamart.students as tb1 where tb1.status_code='active' and tb1.status_value<>1 |
CHECK18 | Поле status_value, содержащее значение 2, должно соответствовать значению cancelled в поле status_code | STUDENT_STATUS_CODE_CANCELLED_MISMATCH | SELECT tb1.id as "students_id" from datamart.students as tb1 where tb1.status_code='cancelled' and tb1.status_value<>2 |
CHECK19 | Поле status_value, содержащее значение 3, должно соответствовать значению entered-in-error в поле status_code | STUDENT_STATUS_CODE_ENTERED_IN_ERROR_MISMATCH | SELECT tb1.id as "students_id" from datamart.students as tb1 where tb1.status_code='entered-in-error' and tb1.status_value<>3 |
CHECK20 | Поле reason_code должно содержать одно из допустимых значений:
| STUDENT_REASON_CODE_INVALID_VALUE | SELECT tb1.id as "students_id" from datamart.students as tb1 where tb1.reason_code not in ('start_study','finish_study','transfer','expulsion','death','academ_vacation') |
CHECK21 | Поле reason_value должно содержать одно из целочисленных значений от 1 до 6 | STUDENT_REASON_VALUE_INVALID | SELECT tb1.id as "students_id" from datamart.students as tb1 where tb1.reason_value not in (1,2,3,4,5,6) |
CHECK22 | Поле reason_value, содержащее значение 1, должно соответствовать значению start_study в поле reason_code | STUDENT_REASON_CODE_START_STUDY_MISMATCH | SELECT tb1.id as "students_id" from datamart.students as tb1 where tb1.reason_code='start_study' and tb1.reason_value<>1 |
CHECK23 | Поле reason_value, содержащее значение 2, должно соответствовать значению finish_study в поле reason_code | STUDENT_REASON_CODE_FINISH_STUDY_MISMATCH | SELECT tb1.id as "students_id" from datamart.students as tb1 where tb1.reason_code='finish_study' and tb1.reason_value<>2 |
CHECK24 | Поле reason_value, содержащее значение 3, должно соответствовать значению transfer в поле reason_code | STUDENT_REASON_CODE_TRANSFER_MISMATCH | SELECT tb1.id as "students_id" from datamart.students as tb1 where tb1.reason_code='transfer' and tb1.reason_value<>3 |
CHECK25 | Поле reason_value, содержащее значение 4, должно соответствовать значению expulsion в поле reason_code | STUDENT_REASON_CODE_EXPULSION_MISMATCH | SELECT tb1.id as "students_id" from datamart.students as tb1 where tb1.reason_code='expulsion' and tb1.reason_value<>4 |
CHECK26 | Поле reason_value, содержащее значение 5, должно соответствовать значению death в поле reason_code | STUDENT_REASON_CODE_DEATH_MISMATCH | SELECT tb1.id as "students_id" from datamart.students as tb1 where tb1.reason_code='death' and tb1.reason_value<>5 |
CHECK27 | Поле reason_value, содержащее значение 6, должно соответствовать значению academ_vacation в поле reason_code | STUDENT_REASON_CODE_ACADEM_VACATION_MISMATCH | SELECT tb1.id as "students_id" from datamart.students as tb1 where tb1.reason_code='academ_vacation' and tb1.reason_value<>6 |
CHECK28 | В случае заполнения поля numb_passport должно быть также заполнено и поле ser_passport | STUDENT_PASSPORT_SERIES_OR_NUMBER_MISSING | SELECT tb1.id as "students_id" from datamart.students as tb1 where COALESCE(tb1.ser_passport, '') = '' AND tb1.numb_passport <> '' |
CHECK29 | Поля numb_passport и ser_passport не могут состоять только из единиц или только из двоек | STUDENT_PASSPORT_FAKE_SERIES_AND_NUMBER_USED | SELECT tb1.id as "students_id" from datamart.students as tb1 where (COALESCE(tb1.numb_passport, '') = '' AND tb1.ser_passport <> '') ) OR ( tb1.numb_passport IN ('111111', '222222') AND tb1.ser_passport = '1111' ) ) |
Таблица students_college | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле auth_link не должно начинаться с символа / | select sc.id from datamart.students_college as sc where sc.auth_link like '/%' | |
CHECK2 | Поле firstname не должно содержать пробел, допустимая длина от 2 до 100 символов | Пример запроса | |
CHECK3 | Поле lastname не должно содержать пробел, допустимая длина от 2 до 100 символов | Пример запроса | |
CHECK4 | В случае заполнения поле patronymic не должно содержать пробел, допустимая длина от 2 до 100 символов | Пример запроса | |
CHECK5 | Поле birthplace не должно содержать пробел, допустимая длина не менее 2 символов | Пример запроса | |
CHECK6 | Поле snils должно содержать только цифры длиной в 11 знаков | Пример запроса | |
CHECK7 | Поле doc_type содержит одно из допустимый значений:
| select sc.id from datamart.students_college as sc where sc.doc_type not in ('passport_rf','temporary_doc','passport_international','passport_diplomat','passport_foreign','others_docs_mvd','others_docs') | |
CHECK8 | При наличии в поле doc_type значения passport_rf должны быть соблюдены следующие условия:
| Пример запроса | |
CHECK9 | Соблюдены следующие условия:
| select sc.id from datamart.students_college as sc where sc.gender_code not in ('male','female') or sc.gender_value not in (1,2) | |
CHECK10 | Поле gender_value, содержащее значение 1, должно соответствовать значению male в поле gender_code | select sc.id from datamart.students_college as sc where sc.gender_code='male' and sc.gender_value<>1 | |
CHECK11 | Поле gender_value, содержащее значение 2, должно соответствовать значению female в поле gender_code | select sc.id from datamart.students_college as sc where sc.gender_code='female' and sc.gender_value<>2 | |
CHECK12 | Поле status_code должно содержать одно из допустимый значений:
| select sc.id from datamart.students_college as sc where sc.status_code not in ('active','cancelled','entered-in-error') | |
CHECK13 | Поле status_value должно содержать одно из целочисленных значений от 1 до 3 | select sc.id from datamart.students_college as sc where sc.status_value not in (1,2,3) | |
CHECK14 | Поле status_value, содержащее значение 1, должно соответствовать значению active в поле status_code | select sc.id from datamart.students_college as sc where sc.status_code='active' and sc.status_value<>1 | |
CHECK15 | Поле status_value, содержащее значение 2, должно соответствовать значению cancelled в поле status_code | select sc.id from datamart.students_college as sc where sc.status_code='cancelled' and sc.status_value<>2 | |
CHECK16 | Поле status_value, содержащее значение 3, должно соответствовать значению entered-in-error в поле status_code | select sc.id from datamart.students_college as sc where sc.status_code='entered-in-error' and sc.status_value<>3 | |
CHECK17 | Поле reason_code должно содержать одно из допустимый значений:
| select sc.id from datamart.students_college as sc where sc.reason_code not in ('start_study','finish_study','transfer','expulsion','death','academ_vacation') | |
CHECK18 | Поле reason_value должно содержать одно из целочисленных значений от 1 до 6 | select sc.id from datamart.students_college as sc where sc.reason_value not in (1,2,3,4,5,6) | |
CHECK19 | Поле reason_value, содержащее значение 1, должно соответствовать значению start_study в поле reason_code | select sc.id from datamart.students_college as sc where sc.reason_code='start_study' and sc.reason_value<>1 | |
CHECK20 | Поле reason_value, содержащее значение 2, должно соответствовать значению finish_study в поле reason_code | select sc.id from datamart.students_college as sc where sc.reason_code='finish_study' and sc.reason_value<>2 | |
CHECK21 | Поле reason_value, содержащее значение 3, должно соответствовать значению transfer в поле reason_code | select sc.id from datamart.students_college as sc where sc.reason_code='transfer' and sc.reason_value<>3 | |
CHECK22 | Поле reason_value, содержащее значение 4, должно соответствовать значению expulsion в поле reason_code | select sc.id from datamart.students_college as sc where sc.reason_code='expulsion' and sc.reason_value<>4 | |
CHECK23 | Поле reason_value, содержащее значение 5, должно соответствовать значению death в поле reason_code | select sc.id from datamart.students_college as sc where sc.reason_code='death' and sc.reason_value<>5 | |
CHECK24 | Поле reason_value, содержащее значение 6, должно соответствовать значению academ_vacation в поле reason_code | select sc.id from datamart.students_college as sc where sc.reason_code='academ_vacation' and sc.reason_value<>6 |
Таблица students_college | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле assurance должно содержать одно из целочисленных значений от 1 до 4 |
Таблица students_representatives | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле relationship_code должно содержать одно из допустимых значений:
| STUDENT_RELATIONSHIP_CODE_INVALID_VALUE | SELECT tb1."student_id" as "relationship_code_student_id" , tb1."representative_id" as "relationship_code_id" from datamart.students_representatives as tb1 where tb1.relationship_code not in ('son','daughter','grandson','granddaughter','brother','sister','nephew','niece','stepson','stepdaughter','foster_child','ward','on_wellfare','other','not_defined') |
CHECK2 | Поле status_code должно содержать одно из допустимых значений:
| STUDENT_REPR_STATUS_CODE_INVALID_VALUE | SELECT tb1."student_id" as "relationship_code_student_id" , tb1."representative_id" as "relationship_code_id" from datamart.students_representatives as tb1 where tb1.status_code not in ('active','cancelled','entered-in-error') |
CHECK3 | Поле status_value должно содержать одно из допустимых значений:
| STUDENT_REPR_STATUS_VALUE_INVALID | SELECT tb1."student_id" as "relationship_code_student_id" , tb1."representative_id" as "relationship_code_id" from datamart.students_representatives as tb1 where tb1.status_value not in (1,2,3) |
CHECK4 | Поле status_value, содержащее значение 1, должно соответствовать значению active в поле status_code | STUDENT_REPR_STATUS_CODE_ACTIVE_MISMATCH | SELECT tb1."student_id" as "relationship_code_student_id" , tb1."representative_id" as "relationship_code_id" from datamart.students_representatives as tb1 where tb1.status_code='active' and tb1.status_value<>1 |
CHECK5 | Поле status_value, содержащее значение 2, должно соответствовать значению cancelled в поле status_code | STUDENT_REPR_STATUS_CODE_CANCELLED_MISMATCH | SELECT tb1."student_id" as "relationship_code_student_id" , tb1."representative_id" as "relationship_code_id"from datamart.students_representatives as tb1 where tb1.status_code='cancelled' and tb1.status_value<>2 |
CHECK6 | Поле status_value, содержащее значение 3, должно соответствовать значению entered-in-error в поле status_code | STUDENT_REPR_STATUS_CODE_ENTERED_IN_ERROR_MISMATCH | SELECT tb1."student_id" as "relationship_code_student_id" , tb1."representative_id" as "relationship_code_id"from datamart.students_representatives as tb1 where tb1.status_code='entered-in-error' and tb1.status_value<>3 |
CHECK7 | В случае заполнения поле reason_code должно содержать одно из допустимых значений:
| STUDENT_REPR_REASON_CODE_INVALID_VALUE | SELECT tb1."student_id" as "relationship_code_student_id" , tb1."representative_id" as "relationship_code_id" from datamart.students_representatives as tb1 where tb1.reason_code is not null and tb1.reason_code not in ('unreliable_data','stop_representant') |
CHECK8 | Поле reason_value, содержащее значение 1, должно соответствовать значению unreliable_data в поле reason_code | STUDENT_REPR_REASON_VALUE_INVALID | SELECT tb1."student_id" as "relationship_code_student_id" , tb1."representative_id" as "relationship_code_id" from datamart.students_representatives as tb1 where tb1.reason_value is not null and tb1.reason_value not in (1,2) |
CHECK9 | Поле reason_value, содержащее значение 1, должно соответствовать значению unreliable_data в поле reason_code | STUDENT_REPR_REASON_CODE_UNRELIABLE_DATA_MISMATCH | SELECT tb1."student_id" as "relationship_code_student_id" , tb1."representative_id" as "relationship_code_id" from datamart.students_representatives as tb1 where tb1.reason_code='unreliable_data' and tb1.reason_value<>1 and tb1.reason_code is not null and tb1.reason_value is not null |
CHECK10 | Поле reason_value, содержащее значение 2, должно соответствовать значению stop_representant в поле reason_code | STUDENT_REPR_REASON_CODE_STOP_REPRESENTANT_MISMATCH | SELECT tb1."student_id" as "relationship_code_student_id" , tb1."representative_id" as "relationship_code_id" from datamart.students_representatives as tb1 where tb1.reason_code='stop_representant' and tb1.reason_value<>2 and tb1.reason_code is not null and tb1.reason_value is not null |
Таблица students_training | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле speciality не должно содержать пробел, допустимая длина не менее 2 символов | COLLEGE_STUDENT_SPECIALITY_INVALID_FORMAT | Пример запроса |
CHECK2 | Поле code_speciality должно заполняться числами в формате dd.dd.dd | COLLEGE_STUDENT_SPECIALITY_CODE_INVALID_FORMAT | Пример запроса |
CHECK3 | Поле num_courso должно заполняться целочисленными значениями не меньше 0 | COLLEGE_STUDENT_COURSE_NUMBER_LESS_THAN_ZERO | SELECT tb1."student_id", tb1."colleges_id", tb1."code_speciality"from datamart.students_training as tb1 where tb1.num_courso<0 |
CHECK4 | Поле num_courso должно заполняться целочисленными значениями не больше 10 | COLLEGE_STUDENT_COURSE_NUMBER_GREATER_THAN_TEN | SELECT tb1."student_id", tb1."colleges_id", tb1."code_speciality" from datamart.students_training as tb1 where tb1.num_courso>10 |
CHECK5 | Поле attendance должно содержать одно из допустимый значений:
| COLLEGE_STUDENT_ATTENDANCE_INVALID_VALUE | SELECT tb1."student_id", tb1."colleges_id", tb1."code_speciality" from datamart.students_training as tb1 where tb1.attendance not in ('resident','part-time','extramural','family','self-education','no_data','externat') |
CHECK6 | Поле data_start_study должно быть обязательно заполнено | COLLEGE_STUDENT_STUDY_START_DATE_NOT_SET | SELECT tb1."student_id", tb1."colleges_id", tb1."code_speciality" from datamart.students_training as tb1 where tb1.data_start_study is null |
Таблица teacher_citizenship | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле code должно содержать одно из допустимых значений: ABH, AUS, AUT, AZE, ALB, DZA, ASM, AIA, AGO, AND, ATA, ATG, ARG, ARM, ABW, AFG, BHS, BGD, BRB, BHR, BLR, BLZ, BEL, BEN, BMU, BGR, BOL, BES, BIH, BWA, BRA, IOT, BRN, BFA, BDI, BTN, VUT, HUN, VEN, VGB, VIR, VNM, GAB, GUY, HTI, GMB, GHA, GLP, GT M, GIN, GNB, DEU, GGY, GIB, HND, HKG, GRD, GRL, GRC, GEO, GUM, DNK, JEY, DJI, DNR, DMA, DOM, EGY, ZMB, ESH, ZWE, YEM, I SR, IND, IDN, JOR, IRQ, IRN, IRL, ISL, ESP, ITA, CPV, KAZ, KHM, CMR, CAN, QAT, KEN, CYP, KGZ, KIR, CHN, CCK, COL, COM, COG, C OD, PRK, KOR, CRI, CIV, CUB, KWT, CUW, LAO, LVA, LSO, LBR, LBN, LBY, LTU, LIE, LNR, LUX, MUS, MRT, MDG, MYT, MAC, MWI, MY S, MLI, UMI, MDV, MLT, MAR, MTQ, MHL, MEX, FSM, MOZ, MDA, MCO, MNG, MSR, MMR, NAM, NRU, NPL, NER, NGA, NLD, NIC, NIU, NZL, NCL, NOR, ARE, OMN, BVT, IMN, NFK, CXR, HMD, CYM, COK, TCA, PAK, PLW, PSE, PAN, VAT, PNG, PRY, PER, PCN, POL, PRT, P RI, MKD, REU, RUS, RWA, ROU, WSM, SMR, STP, SAU, SWZ, SHN, MNP, SYC, BLM, SEN, MAF, SXM, VCT, KNA, LCA, SPM, SRB, SGP,SYR, SVK, SVN, GBR, GBD, GBN, GBO, GBP, GBS, USA, SLB, SOM, SDN, SUR, SLE, TJK, TWN, THA, TZA, TLS, TGO, TKL, TON, TTO, TUV, TUN, TKM, TUR, UGA, UZB, UKR, WLF, URY, FRO, FJI, PHL, FIN, FLK, FRA, GUF, PYF, ATF, HRV, CAF, TCD, MNE, CZE, CHL, CH E, SWE, SJM, LKA, ECU, GNQ, ALA, SLV, ERI, EST, ETH, ZAF, OST, SGS, SSD, JAM, JPN, EUE, XXA, XXB, XXC, XXX | CITIZENSHIP_TR_COUNTRY_CODE_INVALID_VALUE | SELECT tb1."id" as "teacher_citizenship_id"from datamart.teacher_citizenship as tb1WHERE tb1.code not in ('ABH','AUS','AUT','AZE','ALB','DZA','ASM','AIA','AGO','AND','ATA','ATG','ARG','ARM','ABW','AFG','BHS','BGD','BRB','BHR','BLR','BLZ','BEL','BEN',' BMU','BGR','BOL','BES','BIH','BWA','BRA','IOT','BRN','BFA','BDI','BTN','VUT','HUN','VEN','VGB','VIR','VNM','GAB','GUY','HTI','GMB','GHA','GLP','GT M','GIN','GNB','DEU','GGY','GIB','HND','HKG','GRD','GRL','GRC','GEO','GUM','DNK','JEY','DJI','DNR','DMA','DOM','EGY','ZMB','ESH','ZWE','YEM','I SR','IND','IDN','JOR','IRQ','IRN','IRL','ISL','ESP','ITA','CPV','KAZ','KHM','CMR','CAN','QAT','KEN','CYP','KGZ','KIR','CHN','CCK','COL','COM','COG','C OD','PRK','KOR','CRI','CIV','CUB','KWT','CUW','LAO','LVA','LSO','LBR','LBN','LBY','LTU','LIE','LNR','LUX','MUS','MRT','MDG','MYT','MAC','MWI','MY S','MLI','UMI','MDV','MLT','MAR','MTQ','MHL','MEX','FSM','MOZ','MDA','MCO','MNG','MSR','MMR','NAM','NRU','NPL','NER','NGA','NLD','NIC','NIU','N ZL','NCL','NOR','ARE','OMN','BVT','IMN','NFK','CXR','HMD','CYM','COK','TCA','PAK','PLW','PSE','PAN','VAT','PNG','PRY','PER','PCN','POL','PRT','P RI','MKD','REU','RUS','RWA','ROU','WSM','SMR','STP','SAU','SWZ','SHN','MNP','SYC','BLM','SEN','MAF','SXM','VCT','KNA','LCA','SPM','SRB','SGP', 'SYR','SVK','SVN','GBR','GBD','GBN','GBO','GBP','GBS','USA','SLB','SOM','SDN','SUR','SLE','TJK','TWN','THA','TZA','TLS','TGO','TKL','TON','TTO',' TUV','TUN','TKM','TUR','UGA','UZB','UKR','WLF','URY','FRO','FJI','PHL','FIN','FLK','FRA','GUF','PYF','ATF','HRV','CAF','TCD','MNE','CZE','CHL','CH E','SWE','SJM','LKA','ECU','GNQ','ALA','SLV','ERI','EST','ETH','ZAF','OST','SGS','SSD','JAM','JPN','EUE','XXA','XXB','XXC','XXX') |
CHECK2 | Поле name не должно содержать пробел, допустимая длина не менее 2 символов | CITIZENSHIP_TR_COUNTRY_NAME_INVALID_FORMAT | Пример запроса |
Таблица teacher_link | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле должно содержать одно из целочисленных значений от 1 до 4 | TEACHER_LINK_ASSURANCE_INVALID_VALUE | select tb1."teacher_id" as "teacher_link_linked_teacher_id"from datamart.teacher_link as tb1 where tb1.assurance not in (1,2,3,4) |
Таблица teacher_role | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | В случае заполнения поле code должно содержать одно из целочисленных значений от 1 до 4 | ROLE_TEACHER_CODE_INVALID_VALUE | SELECT tr.id from datamart.teacher_role as tr WHERE tr.code is not null and tr.code not in (1,2,3,4) |
CHECK2 | В случае заполнения поле employment должно содержать значения 1 или 2 | ROLE_TEACHER_EMPLOYMENT_INVALID_VALUE | SELECT tr.id from datamart.teacher_role as tr WHERE tr.employment is not null and tr.employment not in (1,2) |
CHECK3 | Поле status_code должно содержать одно из допустимых значений:
| ROLE_TEACHER_STATUS_CODE_INVALID_VALUE | SELECT tr.id from datamart.teacher_role as tr WHERE tr.status_code not in ('active','retired','entered-in-error') |
CHECK4 | В случае заполнения поле status_value должно содержать одно из целочисленных значений от 1 до 3 | ROLE_TEACHER_STATUS_VALUE_INVALID | SELECT tr.id from datamart.teacher_role as tr WHERE tr.status_value is not null and tr.status_value not in (1,2,3) |
CHECK5 | В случае заполнения поле reason_code должно содержать одно из допустимых значений:
| ROLE_TEACHER_REASON_CODE_INVALID_VALUE | SELECT tr.id from datamart.teacher_role as tr WHERE tr.reason_code is not null and tr.reason_code not in ('unreliable_data','stop_to_perform') |
CHECK6 | В случае заполнения поле reason_value должно содержать значения 1 или 2 | ROLE_TEACHER_REASON_VALUE_INVALID | SELECT tr.id from datamart.teacher_role as tr WHERE tr.reason_value is not null and tr.reason_value not in (1,2) |
Таблица teachers | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | В случае заполнения поле auth_link не должно начинаться с символа / | TEACHER_AUTH_LINK_STARTS_WITH_SLASH | SELECT tb1."id" from datamart.teachers as tb1 where tb1.auth_link is not null and tb1.auth_link like '/%' |
CHECK2 | Поле firstname должно соответствовать следующим условиям:
| TEACHER_FIRST_NAME_INVALID_FORMAT | Пример запроса |
CHECK3 | Поле lastname должно соответствовать следующим условиям:
| TEACHER_LAST_NAME_INVALID_FORMAT | Пример запроса |
CHECK4 | Если поле patronymic должно соответствовать следующим условиям:
| TEACHER_PATRONYMIC_INVALID_FORMATG | Пример запроса |
CHECK5 | Поле hash_gost2012 должно содержать только символы латиницы и цифры длиной в 128 знаков | TEACHER_HASH_GOST2012_INVALID_FORMAT | SELECT tb1."id" from datamart.teachers as tb1 where tb1.hash_gost2012 not similar to '[a-f0-9]{128}' |
CHECK6 | В случае заполнения поле gender_code должно содержать одно из допустимых значений:
| TEACHER_GENDER_CODE_INVALID_VALUE | SELECT tb1."id" from datamart.teachers as tb1 where tb1.gender_code is not null and tb1.gender_code not in ('male','female') |
CHECK7 | В случае заполнения поле gender_value должно содержать одно из допустимых значений:
| TEACHER_GENDER_VALUE_INVALID | SELECT tb1."id" from datamart.teachers as tb1 where tb1.gender_value is not null and tb1.gender_value not in (1,2) |
CHECK8 | Поле status_code должно содержать одно из допустимых значений:
| TEACHER_STATUS_CODE_INVALID_VALUE | SELECT tb1."id" from datamart.teachers as tb1 where tb1.status_code not in ('active','cancelled','entered-in-error') |
CHECK9 | В случае заполнения поле status_value должно содержать одно из целочисленных значений от 1 до 3 | TEACHER_STATUS_VALUE_INVALID | SELECT tb1."id"from datamart.teachers as tb1 where tb1.status_value is not null and tb1.status_value not in (1,2,3) |
CHECK10 | В случае заполнения поле reason_code должно содержать одно из допустимых значений:
| TEACHER_REASON_CODE_INVALID_VALUE | SELECT tb1."id" from datamart.teachers as tb1 where tb1.reason_code is not null and tb1.reason_code not in ('start_work','quit_work','pause_work','resumption_work','death') |
CHECK11 | В случае заполнения поле reason_value должно содержать одно из целочисленных значений от 1 до 5 | TEACHER_REASON_VALUE_INVALID | SELECT tb1."id" from datamart.teachers as tb1 where tb1.reason_value is not null and tb1.reason_value not in (1,2,3,4,5) |
Таблица telecom | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | В случае заполнения поле type_contact должно содержать одно из целочисленных значений от 1 до 7 | TELECOM_CONTACT_TYPE_INVALID_VALUE | SELECT tb1."id"from datamart.telecom as tb1 WHERE tb1.type_contact is not null and tb1.type_contact not in (1,2,3,4,5,6,7) |
CHECK2 | Поле value_type не должно содержать пробел, допустимая длина не менее 2 символов | TELECOM_VALUE_TYPE_INVALID_FORMAT | Пример запроса |
CHECK3 | В случае заполнения поле use_cod должно содержать одно из целочисленных значений от 1 до 5 | TELECOM_USE_CODE_INVALID_VALUE | SELECT tb1."id" from datamart.telecom as tb1 WHERE tb1.use_cod is not null and tb1.use_cod not in (1,2,3,4,5) |
Таблица unit_plan | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле unit_name не должно содержать пробел, допустимая длина не менее 1 символа | UNIT_PLAN_NAME_INVALID_FORMAT | Пример запроса |
CHECK2 | Поле description не должно содержать пробел, допустимая длина не менее 2 символов | UNIT_PLAN_DESCRIPTION_INVALID_FORMAT | Пример запроса |
CHECK3 | Поле unit_number не должно содержать пробел, допустимая длина не менее 1 символа | UNIT_PLAN_NUMBER_INVALID_FORMAT | Пример запроса |
Таблица wardship_org_orig | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле name не должно содержать пробел, допустимая длина не менее 3 символов | WARDSHIP_ORG_NAME_INVALID_FORMAT | Пример запроса |
Таблица wardship_org_type | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле code не должно содержать пробел, допустимая длина не менее 1 символа | WARDSHIP_ORG_TYPE_CODE_INVALID_FORMAT | Пример запроса |
CHECK2 | Поле name не должно содержать пробел, допустимая длина не менее 1 символа | WARDSHIP_ORG_TYPE_NAME_INVALID_FORMAT | Пример запроса |
Таблица wordship_alias | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле other_value не должно содержать пробел, допустимая длина не менее 1 символа | WORDSHIP_ALIAS_VALUE_INVALID_FORMAT | Пример запроса |
Таблица ymarks | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Поле subject_name не должно содержать пробел, допустимая длина не менее 2 символов | MARK_YM_SUBJECT_NAME_INVALID_FORMAT | Пример запроса |
CHECK2 | В случае заполнения поле fivepoint_fact должно содержать целое число или дробное число через точку | MARK_YM_FIVEPOINT_FACT_INVALID_FORMAT | Пример запроса |
CHECK3 | В случае заполнения поле fivepoint_final_fact должно содержать целое число или дробное число через точку | MARK_YM_FIVEPOINT_FINAL_FACT_INVALID_FORMAT | Пример запроса |
CHECK4 | В случае заполнения поле fivepoint_recent_plan должно содержать целое число или дробное через точку | MARK_YM_FIVEPOINT_RECENT_PLAN_INVALID_FORMAT | Пример запроса |
CHECK5 | Поле class_num должно содержать целочисленное значение не меньше 1 | MARK_YM_CLASS_NUM_LESS_THAN_ONE | SELECT tb1."id" as "ymarks_id" from datamart.ymarks as tb1 where tb1.class_num < 1 |
CHECK6 | Поле class_num должно содержать целочисленное значение не больше 12 | MARK_YM_CLASS_NUM_GRATER_THAN_TWELVE | SELECT tb1."id" as "ymarks_id" from datamart.ymarks as tb1 where tb1.class_num > 12 |
CHECK7 | В случае заполнения поле mark_scale_code должно содержать одно из допустимых значений:
| MARK_YM_MARK_SCALE_CODE_INVALID_VALUE | select tb1."id" as "ymarks_id"from datamart.ymarks as tb1 where tb1.mark_scale_code not in ('5-points','10-points','100-points','rating','pass/fail','nomarks','7-points','12-points') |
CHECK8 | В случае заполнения поле mark_scale_value должно содержать одно из целочисленных значений от 1 до 8 | MARK_YM_MARK_SCALE_VALUE_INVALID | select tb1."id" as "ymarks_id"from datamart.ymarks as tb1 where tb1.mark_scale_value not in (1,2,3,4,5,6,7,8) |
Таблица 50_10_statcommon | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | В таблице содержится идентификатор образовательной организации, который отсутвует в таблице schools | STATCOMMON_SCHOOL_ID_MISSING | select datamart.statcommon."start_of_week", datamart.statcommon."student_id", datamart.statcommon."period_id" from datamart.statcommon left join datamart.schools on datamart.schools.id = datamart.statcommon.school_id where datamart.schools.id is null |
Таблица 50_23_statcommon | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | В таблице содержится идентификатор ученика, который отсутвует в таблице students | STATCOMMON_STUDENT_ID_MISSING | selecttb1."start_of_week", tb1."student_id", tb1."period_id" from datamart.statcommon tb1 wherenotexists ( select tb2.id from datamart.students tb2 where tb2.id = tb1.student_id ) |
Таблица 50_12_commonplanmarks | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | В таблице содержится идентификатор образовательной организации, который отсутвует в таблице schools | COMMONPLANMARKS_SCHOOL_ID_MISSING | select datamart.commonplanmarks."student_id", datamart.commonplanmarks."period_id" from datamart.commonplanmarks left join datamart.schools on datamart.schools.id = datamart.commonplanmarks.school_id where datamart.schools.id is null |
Таблица 50_27_students_representatives | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | В таблице содержится идентификатор ученика, который отсутвует в таблице students | STUDENTS_REPRESENTATIVES_STUDENT_ID_MISSING | select tb1."student_id", tb1."representative_id" from datamart.students_representatives tb1 where not exists ( select tb2.id from datamart.students tb2 where tb2.id = tb1.student_id ) |
Таблица 50_31_students_representatives | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | В таблице содержится идентификатор представителя ученика, который отсутвует в таблице representatives | STUDENTS_REPRESENTATIVES_REPRESENTATIVE_ID_MISSING | select datamart.students_representatives."representative_id", datamart.students_representatives."student_id" from datamart.students_representatives left join datamart.representatives on datamart.representatives.id = datamart.students_representatives.representative_id where datamart.representatives.id is null |
Таблица 50_25_commonplanmarks | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | В таблице содержится идентификатор ученика, который отсутвует в таблице students | COMMONPLANMARKS_STUDENT_ID_MISSING | select tb1."student_id", tb1."period_id" from datamart.commonplanmarks tb1 where not exists (select tb2.id from datamart.students tb2 where tb2.id = tb1.student_id) |
Таблица 50_02_schools | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Для каждой записи в таблице schools должна быть обеспечена возможность получения связанных данных из таблицы diaries | SCHOOLS_DIARY_ID_MISSING | select tb1.id from datamart.schools tb1 where not exists (select tb2.id from datamart.diaries tb2 where tb2.id = tb1.diary_id) |
Таблица 50_04_schools | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | В таблице содержится идентификатор головной образовательной организации, который отсутвует в таблице schools | SCHOOLS_PARENT_SCHOOL_ID_MISSING | select tb1."id" from datamart.schools tb1 where tb1.parent_school_id is not null and not exists ( select tb2.id from datamart.schools tb2 where tb2.id = tb1.parent_school_id ) |
Таблица bus_check2024_001 | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Для записи в таблице schools не обеспечена возможность связывания с юридическим адресом в таблице address по последовательности таблиц: schools - organisations - address_organisations - address. Для каждой школы необходимо обеспечить наличие в таблице address записи о юридическом адресе (address.type_address=5), а так же связующих записей в таблицах organisations и address_organisations | SCHOOLS_REQUIRED_ORGANISATION_ADDRESS_MISSING | select s.id from datamart.schools s where s.status_value = 1 and not exists (select o.id from datamart.organisations o joindatamart.address_organisations ao on ao.organisation_id = o.id join datamart.address a on a.id = ao.address_id where o.id = s.organisations_id and a.type_address=5) |
Таблица bus_check2024_002 | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Для записи в таблице colleges не обеспечена возможность связывания с юридическим адресом в таблице address по последовательности таблиц: colleges - organisations - address_organisations - address. Для каждого учреждения СПО необходимо обеспечить наличие в таблице address записи о юридическом адресе (address.type_address=5), а так же связующих записей в таблицах organisations и address_organisations | COLLEGES_REQUIRED_ORGANISATION_ADDRESS_MISSING | select c.id from datamart.colleges c where c.status_value = 1 and not exists (select a.id from datamart.organisations o join datamart.address_organisations ao on ao.organisation_id = o.id join datamart.address a on a.id = ao.address_id where o.id = c.organisations_id and a.type_address=5) |
Таблица bus_check2024_008 | |||
№ проверки | Требования к данным | Формат ошибки | SQL запрос для получения данных не подошедших по требованиям |
CHECK1 | Для ученика не обеспечено наличия расписания уроков на предстоящие 7 дней. | STUDENT_HAS_NO_LESSONS_WITHIN_NEXT_SEVEN_DAYS | SELECT * FROM {datamart}.students AS st WHERE st.active = true AND NOT EXISTS ( SELECT lest.student_id FROM {datamart}.lessons_students AS lest JOIN {datamart}.lessons AS le on le.id = lest.lesson_id WHERE lest.student_id = st.id and le.start_datetime >= CAST(CURRENT_DATE AS timestamp) and le.start_datetime <= CAST(TIMESTAMPADD(day, 7, CURRENT_DATE) AS timestamp) ) |