Модуль выгрузок ExportScript — различия между версиями
Lander (обсуждение | вклад) (Новая страница: «Модуль реализован на языке Python 3 и позволяет производить выгрузку в *DAMUMED (Казахстан) *103KZ…») |
Lander (обсуждение | вклад) (→config.ini) |
||
(не показано 7 промежуточных версии 2 участников) | |||
Строка 6: | Строка 6: | ||
*ПроАптека (Россия) | *ПроАптека (Россия) | ||
*Созвездие (Россия) | *Созвездие (Россия) | ||
+ | *PharmIT (Казахстан) | ||
+ | *АСНА | ||
+ | *Iteka (Казахстан) | ||
+ | *003 - СправкаМед (Россия) | ||
+ | *ProActive (Казахстан) | ||
+ | *МФО (Россия) | ||
+ | *AptekiSU (Россия) | ||
+ | *Ваши Лекарства(Россия) | ||
==Установка == | ==Установка == | ||
Строка 28: | Строка 36: | ||
***'''SQL''' скрипты для выгрузки | ***'''SQL''' скрипты для выгрузки | ||
***'''HEAD''' заголовки колонок в CSV файлах | ***'''HEAD''' заголовки колонок в CSV файлах | ||
+ | ***'''SCRIPTS''' скрипты для создания таблиц,триггеров,процедур которые используются в выгрузке | ||
* В корне папки лежат файл настроек, файл запуска, и служебная библиотека | * В корне папки лежат файл настроек, файл запуска, и служебная библиотека | ||
**'''''engine.py ''''' файл служебных библиотек | **'''''engine.py ''''' файл служебных библиотек | ||
− | **'''''export.py ''''' главный файл его запускаем для получение выгрузки, добавляем в планировщик виндовз для запуска по графику | + | <div style="color:#0000FF">**'''''export.py ''''' главный файл его запускаем для получение выгрузки, добавляем в планировщик виндовз для запуска по графику</div> |
**'''''config.ini ''''' файл настроек | **'''''config.ini ''''' файл настроек | ||
===config.ini=== | ===config.ini=== | ||
Строка 93: | Строка 102: | ||
TYPE = 1 ''-тип выгрузки 1-первичная 0-регулярная'' | TYPE = 1 ''-тип выгрузки 1-первичная 0-регулярная'' | ||
+ | |||
+ | PROFILES_ON =1,2,3 ''-профили по которым будет происходить выгрузка (для сетей)(!!!нельзя использовать одновременно со следующим пунктом)'' | ||
+ | |||
+ | PROFILES_OFF = ''-профили которые будут исключены (!!!нельзя использовать одновременно с предыдущим пунктом)''</blockquote> | ||
+ | |||
+ | </blockquote> | ||
+ | |||
+ | ==Запуск и проверка себя== | ||
+ | |||
+ | <div style="color:#0000FF">**'''''export.py ''''' главный файл его запускаем для получение выгрузки, добавляем в планировщик виндовз для запуска по графику</div> | ||
+ | |||
+ | *'''EXPORT''' Папка содержит одноименные выгрузкам подпапками с результатами работы скрипта | ||
+ | |||
+ | ==Системные функции == | ||
+ | |||
+ | ===read_ini=== | ||
+ | вызов read_ini(Секция параметров,Параметр, имя модуля) | ||
+ | Пример:файл config.ini | ||
+ | <blockquote> | ||
+ | [BASE_CONF] | ||
+ | |||
+ | HOST=192.168.67.62 | ||
</blockquote> | </blockquote> | ||
+ | '''read_ini('BASE_CONF','HOST')''' |
Текущая версия на 09:54, 18 мая 2022
Модуль реализован на языке Python 3 и позволяет производить выгрузку в
- DAMUMED (Казахстан)
- 103KZ (Казахстан)
- 2GIS (Казахстан)
- ПроАптека (Россия)
- Созвездие (Россия)
- PharmIT (Казахстан)
- АСНА
- Iteka (Казахстан)
- 003 - СправкаМед (Россия)
- ProActive (Казахстан)
- МФО (Россия)
- AptekiSU (Россия)
- Ваши Лекарства(Россия)
Содержание
Установка
- Устанавливаем на клиентскую машину Python 3 той версии которая поддерживает определенный Windows - Дистрибутивы Питона
- Берем свежую версию скрипта \\Lander\python\ берем всю папку export_csv_tomail
Структура скрипта
Скрипт разделен на папки
- ENGINE Содержит системные библиотеки
- CSV.py создание файлов CSV,
- ftp.py работа с FTP,
- my_log.py логгирование,
- system.py системные функции
- EXPORT Папка содержит одноименные выгрузкам подпапками с результатами работы скрипта
- LOG логи работы скрипта
- MODULES скрипты формирование выгрузки
- если сложный скрипт возможны дополнительные одноименные со скриптом подпапки
- SQL скрипты для выгрузки
- HEAD заголовки колонок в CSV файлах
- SCRIPTS скрипты для создания таблиц,триггеров,процедур которые используются в выгрузке
- если сложный скрипт возможны дополнительные одноименные со скриптом подпапки
- В корне папки лежат файл настроек, файл запуска, и служебная библиотека
- engine.py файл служебных библиотек
- config.ini файл настроек
config.ini
- раздел BASE_CONF
HOST=192.168.67.33 -имя компьютера с базойPATH=d:\Standart-N/base_s_new/ZTRADE_S.FDB -путь до базы
CLIENT =TEST - имя клиента (латиница)
ALONE=0 (1 - одиночная точка 0-сеть)
PATH_EXPORT=./export/ -основной путь до выгрузок
PROFILES_ON =1,2,3 -профили по которым будет происходить выгрузка (для сетей)(!!!нельзя использовать одновременно со следующим пунктом)
PROFILES_OFF = -профили которые будут исключены (!!!нельзя использовать одновременно с предыдущим пунктом)
- раздел PARAMS - какие выгрузки активны
[PARAMS]
- 1-выгрузка активна 0 - неактивна
Kztogis=0
KZ103=0
PHARMIT=0
DAMUMED=1
PROAPTEKA = 0
SOZVEZDIE = 0
- раздел с именем выгрузки (SOZVEZDIE,PROAPTEKA,KZTOGIS,KZ103,DAMUMED) могут содержать следующие поля
PATH_EXPORT=./export/proapteka/ -путь к выгрузке
DEVIDE = | -разделитель CSV
DEP_CODE =1 он же DEPARTMENTCODE=10000 -код подразделения
FILE_LIST = Users,Sales,Purchase,Suppliers,Departments,Goods,Store,Stock -список файлов выгрузки
DATE_START = 01.11.2020 -Дата начала периода выгрузки
DATE_END = 30.11.2020 -Дата окончания периода выгрузки
FTP_HOST=ftp.damumed.kz -адрес FTP
FTP_PORT=21 -порт FTP
FTP_USER=aptekaotad12oya -Пользователь FTP
FTP_PASSWORD=a2Zdb7222U2 -Пароль FTP
FTP_PATH = -если выгрузка не в корень FTP то указать путь
STATUS = 0 -0 не выгружаем на фтп режим теста, 1-выгружаем боевая выгрузка
CLIENT_ID=2GIS -идентификатор клиента в АПИ выгрузки
TYPE = 1 -тип выгрузки 1-первичная 0-регулярная
PROFILES_ON =1,2,3 -профили по которым будет происходить выгрузка (для сетей)(!!!нельзя использовать одновременно со следующим пунктом)
PROFILES_OFF = -профили которые будут исключены (!!!нельзя использовать одновременно с предыдущим пунктом)
</blockquote>
Запуск и проверка себя
- EXPORT Папка содержит одноименные выгрузкам подпапками с результатами работы скрипта
Системные функции
read_ini
вызов read_ini(Секция параметров,Параметр, имя модуля) Пример:файл config.ini
[BASE_CONF]
HOST=192.168.67.62
read_ini('BASE_CONF','HOST')