Экспорт реестра заявок
Организации используют формы Pyrus для согласования счетов, прайс-листов и других документов. Если данные из Pyrus нужно использовать в бухгалтерской, учетной программе или ERP-системе, воспользуйтесь функцией экспорта реестра. Реестр сохраняется в виде файла формата CSV, который можно будет загрузить в другие программы.
Предположим, требуется передать бухгалтерской программе сведения обо всех платежах. В Pyrus Sync в списке Forms выберите нужную форму. В нашем примере это Согласование платежей.
Подсказка: Настроить экспорт для формы может ее Администратор. Попросите его добавить вас в Администраторы, если вы не видите нужной формы в списке.
В правой части экрана перейдите в раздел Export и запустите выгрузку кнопкой New Export. В открывшемся окне нажмите CSV File.
Откроется окно со стандартными параметрами экспорта в формате JSON. Они соответствуют однократной выгрузке списка заявок со всеми колонками. Сохраните параметры — нажмите кнопку Save. Чтобы запустить выгрузку реестра, нажмите Run now.
Файл сохранится в папке Документы на жестком диске вашего компьютера.
Экспорт по расписанию
Предположим, вы хотите выгружать согласованные расходы каждый день в 12:15. Добавляем это требование в параметры конфигурации. В раздел ExportSettings добавляем {ScheduledTime: «12:15»}. В кавычках здесь указано, в какое время нужно осуществлять выгрузку.
{ "Name": "Export Согласование расходов", "Path": "C:\\Users\\ivanov\\Documents", "Delimiter": ";", "ExportSettings":{ "ScheduledTime": "12:15" } }
Если же выгрузка требуется с определенной периодичностью, например, каждые полтора часа, настраиваем период тем же способом. Только в раздел ExportSettings добавляем {ScheduledPeriod:}. Цифра после двоеточия — временной промежуток от выгрузки до выгрузки в минутах.
{ "Name": "Export Согласование расходов", "Path": "C:\\Users\\ivanov\\Documents", "Delimiter": ";", "ExportSettings":{ "ScheduledPeriod":90 } }
Выборочный экспорт с условиями. Пример
Иногда в бухгалтерскую или учетную программу нужно передать только часть информации, которая есть формах Pyrus. Например, только данные о согласованных счетах или договорах. В этом случае можно настроить выборочный экспорт реестра.
Выгрузим для примера список уже одобренных (переданных на третий этап, в бухгалтерию) счетов, оплата которых будет безналичной. Причем экспорт всех полей формы не требуется — достаточно названия контрагента, его ИНН, номера расчетного счета и суммы. После экспорта счет должен автоматически переходить на следующий этап согласования: фактически он уже передан на оплату.
Изменим стандартные настройки экспорта. Чтобы открыть окно конфигурации, нажмите на шестеренку в строке экспорта.
Добавьте в параметры номер этапа («StepNo»: 3) и задайте правило переходить на следующий шаг после экспорта («ApproveAfterExport»: true).
{ "Name": "Export Согласование расходов", "Path": "C:\\Users\\ivanov\\Documents", "Delimiter": ";", "ApproveAfterExport": true, "ExportSettings": {} "StepNo": 3 }
Теперь определите условия. Нам нужны только заявки со значением Безналичная в поле Тип оплаты. Если это условие не соблюдается, выгружать заявку не нужно. Добавляем в конце «ColumnMap»: []. Также убираем все лишние поля формы из экспорта — оставляем только название контрагента, его ИНН, номер счета и сумму.
{ "Name": "Export Согласование расходов", "Path": "C:\\Users\\ivanov\\Documents", "Delimiter": ";", "ApproveAfterExport": true, "ExportSettings": { "StepNo": 3, "ExportRules": [ { "Conditions": [ { "PyrusField": "Номенклатура", "Values": [ "Номенклатура" ] } ], "ColumnMap": [] }, { "Conditions": [ { "PyrusField": "Тип оплаты", "Values": [ "Безналичная" ] } ], "ColumnMap": [ { "CsvColumn": "Сумма руб.", "PyrusField": "Сумма руб." }, { "CsvColumn": "Контрагент (новый)", "PyrusField": "Контрагент (новый)" }, { "CsvColumn": "ИНН", "PyrusField": "ИНН" }, { "CsvColumn": "№ расчетного счета", "PyrusField": "№ расчетного счета" }, { "CsvColumn": "Цена", "PyrusField": "Цена" } ] }, { "ColumnMap": [] } ] } }
Сохраните параметры. После этого можно запускать выгрузку реестра.
Параметры экспорта
Конфигурация экспорта в Pyrus Sync задается в формате JSON — текстовом формате хранения и передачи структурированных данных.
Есть несколько правил и условий настройки экспорта.
- Все поля как в шаблоне формы Pyrus, для которой вы настраиваете экспорт, так и в файле CSV, должны иметь уникальные названия. Пробелы в начале и в конце названия система не учитывает, а регистр — учитывает (названия полей «Счет» и «счет» считаются разными).
- Для настройки интеграции вам потребуются права администратора формы. Запускать экспорт может любой участник формы.
- Механизм экспорта умеет выгружать поля типа файл. Однако файлы, приложенные к задаче вне полей формы, экспортировать нельзя.
Для настройки экспорта можно использовать следующие параметры:
- Name — обязательное поле; название конфигурации. Например:
"Name": "Export Согласование расходов",
- Path — обязательное поле; путь, куда будет сохранен CSV файл с результатами экспорта:
"Path": "C:\\pyrus",
- Delimiter — необязательное поле; символ-разделитель колонок для файлов CSV. Если не указано, определяется автоматически, в зависимости от настроек компьютера. В российской локали это ";".
"Delimiter": ";",
- Encoding — необязательное поле; кодировка CSV файла. Если не указано, используется CP1251. Полный список можно найти здесь. К примеру, смена кодировки на UTF-8 выглядит так:
"Encoding": "utf-8",
- ShowUserIds — необязательное поле; список ID пользователей, которые видят настроенные конфигурации и могут запускать экспорт. Если не указано, экспорт могут запускать все участники проекта. Менеджер проекта может запускать экспорт всегда, даже если его ID не указан. Чтобы задать, кто из сотрудников сможет запускать экспорт, укажите их ID через запятую, например:
"ShowUserIds": [123183, 123193],
- FromDate — необязательное поле; фильтр по дате создания. Указывается дата, все задачи с датой создания позже которой будут экспортированы.
"FromDate": "01.09.2022" "FromDate": "{Today}[-10]"
- ToDate — необязательное поле; фильтр по дате создания. Указывается дата, все задачи с датой создания раньше которой будут экспортированы.
"ToDate": "15.09.2022" "ToDate": "{Today}[-10]"
- IncludeFinishedTasks: необязательное поле; включает в выгрузку завершенные задачи.
"IncludeFinishedTasks": true
Посмотреть ID пользователя можно в адресной строке на странице его профиля.
- ExportSettings — необязательное поле; правила экспорта.
- ExportRules — необязательное поле; условия обработки задач. У каждого условия есть два обязательных элемента: список условий (Conditions) и правила отображения (ColumnMap).
Настройка правил экспорта в разделе ExportSettings
- ScheduleUserIds — необязательное поле; список ID пользователей для запуска экспорта по расписанию. Перечислите через запятую ID тех сотрудников, от имени которых нужно запускать экспорт. Если ID не указаны, экспорт по расписанию запускается от имени всех пользователей. Допустим, для какой-то формы вы настроили экспорт по расписанию и не указали параметр ScheduleUserIds. Если, например, три сотрудника запустили Pyrus Sync и у них есть доступ в эту форму, у всех троих будет запущен экспорт по расписанию.
- ScheduledTime — необязательное поле; время запуска по расписанию. Указывается в кавычках, минуты от часов отделяются двоеточием. Например, “12:24”.
- ScheduledPeriod — необязательное поле; запуск каждые N минут (N- целое число). Например, если синхронизация требуется каждые 15 минут писать следует :15, без кавычек. Если указано расписание, ScheduledTime, то это поле система проигнорирует.
- ScheduleResultUser — необязательное поле; определяет, кого система оповестит о результатах выгрузки. По умолчанию сообщение получит тот пользователь, под чьим аккаунтом в Pyrus Sync настраивался экспорт.
- StepNo — необязательное поле; номер этапа. Если указано, то экспортируются только формы, находящиеся на определенном этапе, иначе - все формы.
- ApproveAfterExport: true — необязательное поле. Если указано, после экспорта Pyrus Sync проставит от своего имени согласование в задаче. Если все пользователи текущего этапа уже согласовали задачу, она перейдет на следующий этап.
- CloseAfterExport: true — необязательное поле. Если указано, Pyrus Sync закроет задачу после экспорта при условии, что пользователь, под чьим аккаунтом запущен Pyrus Sync, обладает правом закрывать задачи по этой форме.
- FileName — шаблон имени файла для сохранения результата выгрузки. По умолчанию - строка, состоящая из названия формы, имени пользователя, даты и времени экспорта с расширением ".csv"
Настройка условий обработки задач при экспорте, ExportRules
Если требуется экспортировать задачи, только подходящие под определенные критерии или, например, осуществить экспорт разных видов для разных типов задач, нужен этот раздел. У каждого правила (ExportRules) есть два обязательных элемента: список условий (Conditions) и правила отображения (ColumnMap). Если в форме есть поле типа Таблица, то правила экспорта будет применяться сначала для задачи с таким полем в целом, а потом для каждой строки таблицы.
Элемент Conditions
- PyrusField — обязательное, название поля в форме.
- Values – обязательное, список значений PyrusField.
- IsNotNull: true — правило применяется, если поле PyrusField заполнено.
Элемент ColumnMap Здесь указывается список колонок, которые должны войти в файл выгрузки. Можно также настроить, из какого поля Pyrus в какую колонку CSV файла будут писаться данные. Если раздел присутствует, список должен содержать не менее одного элемента. Важно помнить, что последним элементом списка должен быть ColumnMap[]. Иначе в экспорт войдут не все нужные данные.
- PyrusField — название поля формы.
- CsvColumn — название соответствующей ему колонки в CSV файле. Если это поле не указано, то название колонки в файле будет совпадать с значением PyrusField.