
60
Запуск сессии SAP. Если сессия не запущена (sap_is_started is False), то
производим вызов функции CREATE_SAP_CONNECTION() из модуля main.
Функция запускает сессию SAP.
Вызов функции SAP_get_date_and_number_formats. Ввиду того, что у
разных пользователей могут быть установлены разные настройки формата дат и
чисел, и для дальнейшей корректной работы автореспондера, все данные,
полученные из SAP должны иметь те же настройки, что и данные в шаблонах
excel. Для установки соответствия форматов данных вызывается функция
SAP_get_date_and_number_formats() , описанная в модуле main. Функция
запускает транзакцию SU3 и меняет настройки, отмеченные на рисунке:
Вызов функции main_func. Функия описана в модуле main и выполняет
полный сбор данных из SAP по собранным запросам - возвращает
положительные результаты и ошибки по не найденным строкам. Запускается
транзакция FBL1N по данным, собранным в массивах query и query2. По каждой
строке массивов происходит поиск недостающих данных - тип банка, сумма,
дата платежа. Результаты поиска возвращаются в массив sap_data.
Фильтрация собранных ошибок sum_errors_extend. Из всех данных
sap_data фильтруются ненайденные данные и записываются в переменную
sum_errors_extend.
Группировка положительных результатов sap_data. Вызов функции
groupping_outcome_sap выполняется из модуля setup, промежуточные данные
группируются по аналогии с группировкой входных данных.
Очистка рабочих папок на Share Drive. Выполнение очистки папок от
предыдущих данных, в случае если инструмент отрабатывает не первый цикл за
день и первоначальная очистка, описанная в начале модуля уже не сработает.
Сборка директории местонахождения PDF файла на основе
положительных результатов. Построение директории происходит методом
присоединения os.path.join к директории, обьявленной в переменной main_path
дополнительного пути, указывающего на местонахождение искомого файла
PDF. Для этого дата платежа, полученная из SAP конвертируется в путь на диске