Инструкция по использованию API
Оглавление
API — это набор вспомогательных инструментов для взаимодействия
одной из программ нашей фирмы с другими программами. Например, с помощью
API можно из программы Корс-Торг сформировать
Excel-файл, содержащий состояние склада; этот файл может использоваться
другой программой для дальнейшей обработки.
API позволяет получить новые возможности, не изменяя
основную программу. API предоставляется в виде отдельных
программ, как правило, запуск API не влияет на работу
основной программы.
Основные варианты использования API:
- Получение текущих складских остатков
- Список занятых/свободных номеров
- Вывод справочников товаров, услуг, клиентов,...
- Вывод списка документов
Поддерживаемые линейки программы:
- Гараж
- Торг
- Отель
- РемСтрой
Варианты API:
- api1 - простой вариант: состояние складов (без
цен), свободные/занятые номера (не требует использования справочника
пользователей и паролей)
- api2 - расширенный вариант: дополнительно: вывод цен, справочников,
документов (требуется
разрешение на использование API в справочнике пользователей)
Взаимодействие с базой данных:
- для сетевых версий программ - использование API не зависит от того,
запущена ли основная программа
- для локальных версий программ - использование API возможно только,
если основная программа не запущена
Внимание! Использование API предназначено для квалифицированных
пользователей!
Для использования Api1:
- Скачайте api1.exe
и сохраните модуль в папку с основной программой
- Для использования api1.exe в произвольной папке скопируете в нее
файлы vfp9rrus.dll, vfp9r.dll и config.fpw из папки с основной программой
Параметры вызова:
- Обязательные:
- отчет (допустимые варианты: Ostat1,
Ostat2, Bron1, Bron2 )
- путь к базе данных (например, "d:\baza")
- Необязательные:
- путь к файлу с результатом (например, "d:\result");
по умолчанию - result (расширение - в зависимости от выбранного
формата рузультата, например, resulst.xls)
- формат результата (допустимые варианты: XLS,
XML, CSV, DBF); по умолчанию - XLS
- дополнительное условие (например, "C_skl=55")
Допустимые отчеты:
- Для программ линеек Торг, Гараж, РемСтрой:
- Ostat1 - суммарные остатки товаров по все складам
- Ostat2 - остатки товаров на каждом из складов
- Для программ линейки Отель:
- Bron1 - список занятых номеров на текущую дату
- Bron2 - список свободных номеров на текущую дату
Примеры вызова:
- api1.exe OSTAT1 "d:\baza" (остатки
по складам; формируется файл result.xls в текущей папке)
- api1.exe OSTAT2 d:\baza "d:\папка для api\результат"
XML "C_Skl=55" (все параметры
заданы; остатки для указанного склада)
- api1.exe BRON1 "d:\papka1" "nomera" CSV (список
занятых номеров в формате CSV, результат - файл nomera.csv)
Для использования Api2:
- Скачайте api2.exe
и сохраните модуль в папку с основной программой
- Для использования api2.exe в произвольной папке скопируете в нее
файлы vfp9rrus.dll, vfp9r.dll и config.fpw из папки с основной программой
- Важно!
В основной программе, в справочнике пользователей, выберите пользователя,
от лица которого будет запускаться API. Нажмите Изменить и отключите
галочку Запрет на выполнение Api2.
Вы можете использовать дополнительные условия для формирования отчета
с целью отфильтровать предварительный результат по каким-либо критериям.
Дополнительные условия передаютсмя с помощью последнего параметра при вызове
api.
Как задавать доп.условия:
- Сформируете отчет без дополнительных условий
- В отчете выберите названия колонок для формирования условия, а также
выберите нужные вам значения из этих колонок (см. примеры ниже)
- Составьте дополнительное условие
- Сформируете отчет с дополнительными условиями
Пример 1:
- Задача: сформировать остатки по одному конкретному
складу
- Сформируйте отчет Ostat2
- Найдите в результате колонки Skl_Name и C_Skl
- Найдите нужный Вам склад в колонке Skl_Name
- Посмотрите значение поля C_Skl для выбранного склада
- Сформируйте дополнительное условие, например, "c_skl=55"
- Сформируйте отчет Ostat2 с доп.условием
- Замечание: лучше использовать колонки с цифровыми значениями
("c_skl=55") вместо колонок с текстом ( "skl_name='Склад
№ 1' ")
Пример 2:
- Задача: сформировать список занятых номеров с состояние
"Бронь"
- Сформируйте отчет Bron1
- Найдите в результате колонки Sos_Name и C_Sos
- Найдите нужное Вам состояние в колонке Sos_Name
- Посмотрите значение поля C_Sos для выбранной строки
- Сформируйте дополнительное условие, например, "c_sos=71"
- Сформируйте отчет Bron1 с доп.условием
- Замечание: лучше использовать колонки с цифровыми значениями
("c_sos=71" вместо "sos_name='Бронь' ")
Примеры условий:
- "C_Sos=71" простое условие
- "C_Sos=71 OR C_Sos=72" сложное условие (c_sos равно
71 ИЛИ 72)
- "INLIST(C_Sos, 71, 75, 23)" диапазон значений (71,
75 или 23)
- "C_Skl=55 AND Tov_Kol>10" выбрать
товары для склада с кодом 55 И количеством более 10
- "Dt=DATE(2023,12,31) AND Dni>2"
выбрать бронирования с датой заезда 31 дек 2023 и длительностью более
2-х дней
- В выражении можно использовать скобки
- Регистр не важен (C_SKL=c_skl=C_Skl)
- Внутри выражения не используйте двойные кавычки (используйте одинарные):
"Opr='SCH' AND Dat_Y2K>=DATE(2023,5,1)"
Основные поля для программ линейки Торг, Гараж, РемСтрой:
- C_Tov, Tov_SName, Art код товара, название товара,
артикул
- C_Gru, Gru_Name, Tree код группы, название группы,
порядок группы (для сортировки)
- C_Skl, Skl_Name код склада, название склада
- C_Tip, Tip_Name код типа/бренда, название
- Tov_Kol, Tov_Rez количество товара, количество в резерве
- Opr - тип документа для отчета Spi_Dok
- Dat_Y2K - дата документа для отчета Spi_Dok
Желаем вам успешной работы!