«Артиллерия не стреляла по двадцати причинам;
во-первых, не было снарядов…»
Сколь ни был бы мощен наш инструментарий для дизайна отчётов, тем не менее, мы может столкнуться с, казалось бы, неразрешимой проблемой отсутствия «снарядов» (первичных данных в исходной ERP-системе).
Как известно, в настоящий момент нет возможности завести в iScala 3.0 бюджеты по дням (бюджетирование ведётся только по периодам).
Однако, в гостиничном бизнесе, а также в других сферах, бюджетирование доходов и расходов сильно коррелирует с днём недели, ведь, очевидно, что во время уикенда выручка ресторанов и баров существенно возрастает. Поэтому, необходимые нам бюджеты по дням всё-таки существуют в природе, а именно, в виде Excel-файла, который был создан бухгалтером или управляющим.
Цитата из родительской статьи:
Третий способ — использование «внешней таблицы». Кстати, знаете ли Вы, что AFR может читать данные из внешней таблицы? Этот метод подробно рассматривать не будем в силу его «нестандартности», однако отдельный материал о том, как обращаться из AFR к «внешним» данным, будет обязательно подготовлен
Итак, «снаряды» подвезли. Дальнейший наш план таков:
- Импортировать данные из Excel-файла базу данных AFR
- Добавить обращение к новым данным в структуру AFR-отчёта при помощи функциональности custom query
Представим, что у нас есть исходный Excel-файл подобного вида
Импортировать данные из Excel-файла базу данных AFR можно при помощи стандартной функциональности импорта в SQL Management Studio.
В появившемся диалоговом окне определяем Microsoft Excel как Data Source и указываем путь к нашему файлу с дневными бюджетами. Первая строка у нас будет содержать наименования столбцов, поэтому, ставим соответствующую галку.
На следующей странице необходимо выбрать SQL Native Client и имя нашей AFR базы должно подставиться автоматически.
На следующем шаге выбираем опцию копирования данных.
Следующий шаг позволяет нам выбрать лист Excel-файла, данные которого будут перенесены в SQL-таблицу.
Необязательная опция: при желании вы можете изменить формат поля в SQL-таблице, используя кнопку Edit Mapping.
Далее всё банально: Next – Next – Finish, и новая таблица вместе с данными будет создана в AFR базе.
Использование внешних данных в AFR при помощи custom query
Теперь давайте откроем AFR Designer и рассмотрим, как получить доступ к внешним данным.
Для этого откройте набор строк и добавьте новое свойство типа Query (Row Set –Details – User Properties). Определим его имя как DailyBudget и нажмём на кнопку (…) для определения значений.
Появится окно Query Builder и наша новая таблица доступна для выбора
Выберем поле Budget из таблицы DailyBudget$, а также отфильтруем данные по дню и по маске счёта.
Список всех доступных выражений для использования с фильтром можно получить из контекстного меню. В нашем случае мы применяем эффективный фильтр для ячейки.
Важно помнить, что наше SELECT-выражение должно возвращать только одно значение, поэтому надо внимательно подбирать WHERE условие. Если будет возвращено более одной строки, то в AFR отчёте будет пустое значение.
Теперь давайте рассмотрим, как использовать эти данные из свойства DailyBudget в колонках. Да очень просто! Добавляем колонку с ссылкой на свойство DailyBudget и всё!
В нашем примере я добавил три таких колонки для бюджета на сегодня, завтра и послезавтра, а также, определил в колонках дополнительный фильтр по дням.
Для тестового примера давайте создадим простейший Row Set с одной строкой Account List.
И не менее простой отчёт, который базируется на дневных данных.
И, наконец, давайте взглянем на результат нашего творчества.
Мы сделали это – получили отчёт с дневными бюджетами!
И, что не менее важно, мы научились использовать данные из внешних таблиц, что значительно расширяет наши возможности.
Замечу, что мы можем обращаться не только к таблицам AFR базы, но и к другим базам на этом SQL-сервере, где у вашего аккаунта есть права. Для этого путь к таблице должен также содержать имя базы и схемы данных.
Если у Вас возникли какие-либо вопросы, не стесняйтесь их задать.
Список опубликованных процедур:
- Как организовать рассылку напоминаний о просроченной задолженности?
- Как настроить Service Connect для автоматического импорта Заказов на Закупку из XLS файла?
- Как сделать многоуровневое утверждение заявок с помощью механизма отчётов MS SQL Server Reporting Services?
- Как создать и привязать к полю составной (иерархический) быстрый поиск (Composite Snap Search)?
- Как добавить шаблон документа для выходного канала MSRS?
- Имеется отчёт AFR для одной из компаний группы, он подходит для всех остальных компаний. Как его распространить?
- Как сделать отчёт с бюджетами для iScala по дням?
- Как сделать отчёт AFR в 2-х валютах с пересчётом по фиксированному курсу?
- How can I create an AFR report in 2 currencies using fixed rate?
- How to create AFR report with daily budgets from iScala?
- Как установить и каким образом можно использовать значение минимально допустимого остатка на складе?
- Как перенести отчёт MS SQL Server Reporting Services на другой сервер?
- Как получить, отредактировать и обновить отчёт MS SQL Server Reporting Services?
- Как сделать отчёт AFR в разных валютах с пересчётом по фиксированному курсу и выбором валюты?
- Как дать доступ к отчётам SQL Server Reporting Services?
- Как создать виртуальную машину для изучения MS SQL Server Reporting Services?
- Бэкап SQL 2008 R2 не восстановить на SQL 2008, что делать?
- Пример записи информации в txt файл из SQL запроса
- Как проконтролировать ввод новых, изменения и удаления существующих карточек покупателей, поставщиков, запасов?
- «Если это невозможно сделать, но очень хочется?» или «Как ввести примечание к строке требования?»
- Как разграничить доступ пользователей на сервере отчётов?
- How to delimit user access on the Reporting Server?
- Имеется шаблонная настройка для одной из компаний группы, она подходит для всех остальных компаний. Как её распространить?
- Выверяем данные между модулями УЗ и ГК
- Список проводок по запасам, для которых не созданы проводки ГК
- Проверяем отсутствие пропусков складских проводок и наличия других «вмешательств»
- Проводки истории Журнала Главной Книги модуля УЗ, имеющие иной период, чем в ГК
- Проводки ГК по счетам учёта запасов не из модуля УЗ
- Несоответствие истории проводок ГК модуля УЗ автоучёту
- Проводки ГК без соответствующих аналитических проводок
- How to add a document template for MSRS Output Channel
- Как зафиксировать заголовок отчёта на сервере отчётов (SSRS)?
- Многоуровневое утверждение заявок в Epicor iScala: как это работает? Доклад на конференции клиентов Эпикор в Москве 12.09.2017
- Multi Level Approvals for Requisitions: How it works?
- Как с помощью T-SQL прочитать список файлов в выбранной папке и отфильтровать нужные?
- Жизнь на Марсе есть! или Для модуля «Заработная плата» канал MSRS использовать можно, проверено!
- Электронные счета-фактуры как требования российского законодательства: доклад на конференции клиентов Эпикор 23.05.2013
- Как создать макрос в Excel и добавить его в меню надстроек?
- Как создать виртуальную машину VM Ware с ознакомительной версией Windows Server 2016 или Windows Server 2019?
- Как пользоваться сервером отчётности MS SQL Server Reporting Services (SSRS)?
- Как установить SQL Server Data Tools (SSDT) для Visual Studio 2019 и добавить проект Report Server?
- Что должно быть настроено в системе, чтобы при печати счетов-фактур в модуле «Заказы на Продажу» создавались XML файлы? / What should be configured in the system if we want XML files to be created when printing invoices in the Sales Orders module?
- Как автоматически загрузить курсы валют с сайта ЦБР?
- Как автоматически загрузить акт или УПД поставщика из системы ЭДО?
- Как совместить старую версию Scala/iScala с ЭДО?
- Как создать новый выходной канал для сохранения файла в папку EDI?
- Как проверить работоспособность рабочего потока Epicor Service Connect?
- Как установить и подключить готовый рабочий поток Epicor Service Connect?
- Как изменить настройки выходного канала для печати?
- Как организовать автоматическое создание проводок для массового списания основных средств?
- Как проверить соответствие исходящего сальдо предыдущего года и входящего сальдо текущего года?
- Как сделать вывод логотипа зависимым от кода компании?