Представляю универсальный пользовательский инструмент, который позволяет быстро и достаточно просто формировать сложные нединамические (статические) отчёты, для составления которых обычно приходится вручную переносить данные из 1С в Excel и там выполнять над ними необходимые вычисления, либо пользоваться услугами программиста для автоматизации процесса получения аналогичного результата.
Сравнение с Excel условно, и приводится для простоты понимания решаемых данным инструментом задач и объяснения имеющихся в нем возможностей.
Инструмент предназначен тем, кому необходимо анализировать данные учета и рассчитан на обычных пользователей 1С, понимающих в каких учетных регистрах или на каких бухгалтерских счетах находятся требуемые им данные и способным составить несложную таблицу в Excel. Действия, необходимые для составления отчета, напоминает те, что производятся для заполнения листа Excel, за тем исключением, что для произвольных ячеек необходимо, буквально в несколько кликов мышкой, определить состав выводимых в них итоговых данных 1С. Единожды настроенный таким образом и сохранённый отчёт, будет всегда выводить актуальные данные.
Выполненный в виде внешнего отчета, инструмент не требует встраивания в конфигурацию и какого либо ее изменения. Может подключаться как внешний отчет.
В ячейках таблицы могут содержаться примитивные типы данных, стандартные периоды, ссылки на справочники, документы, перечисления и, конечно же, формулы, результатом выполнения которых будут значения тех же типов.
Реализован простой и удобный механизм массового заполнения значений. Например, легко заполнить вниз или вправо от текущей ячейки необходимое количество дат или чисел с выбранным шагом или выбранные элементы справочников, документы и т.п.
В одной ячейке таблицы можно получить произвольное количество числовых данных 1С из регистров бухгалтерии, накопления, сведений, регистров расчета (в стадии разработки). Ссылки на получаемые в строках данные имеют формат D№, где № - номер строки. Можно, например, в первой строке данных (D1) получить начальное (конечное) сальдо по счетам со схожей аналитикой (если требуются отборы по аналитике), во второй (D2) - дебетовой (кредитовый) оборот по этим же (любым другим) счетам, в третьей строке данных (D3) получить, скажем, оборот по регистру накопления "НДС продажи" и т.д. и т.п. Ссылки на строки данных доступны только внутри формулы текущей ячейки. Период выбираемых данных един для всех строк данных одной ячейки и может задаваться в целом для отчета (основной период), сдвигом к основному периоду для конкретной колонки или, чуть сложнее, по ссылке на периоды (даты), находящиеся в других ячейках, или же указанием конкретного периода в самой ячейке. На отборы в строках данных ячейки могут накладываться отбор на уровне отчета в целом и отбор для каждой колонки отчета.
Есть два формата обращения к ячейкам (областям ячеек) в формулах на выбор. Первый вариант предполагает указание адреса(ов) в формате R№C№(R$№C$№) , второй, аналогичный современному в Excel (так называемый стиль ссылок R1C1) R[№]C[№](R№C№), где в квадратных скобках указывается ссылка или, иначе, смещение относительно текущей ячейки. В круглых скобках указан вариант абсолютной адресации. Адреса ячеек (или ссылки) доступны в формулах ячеек, отборах строк данных ячейки, в полях для ввода начала и конца периода при указании периода для конкретной ячейки.
Постарался максимально упростить процесс формирования формул, в том числе процесс выбора адресов (ссылок) ячеек.
Для составления формул и описания получаемых из 1С данных предусмотрена специальная форма, позволяющая все операции выполнять при помощи одной мышки.
Формулы в ячейках должны начинаться со знака "=". Помимо ссылок на строки данных текущей ячейки (например D1+D2-D3), на другие ячейки (например R1C1), в формулах можно использовать встроенные функции, функции 1С, функции серверных общих модулей. В формулах можно выполнять действия над всеми указанными типами данных, например складывать строки, производить вычисления над датами, арифметические вычисления, получать через точку значения реквизитов ссылочных типов, преобразовывать значения данных одного типа в другой (например данные числового типа в строковый и наоборот).
Для тех, кому покажется мало заложенных возможностей получения данных из 1С, в формулах доступно получение данных произвольным кодом 1С, при необходимости обращаясь к результатам любых других ячеек и строк данных текущей ячейки. Данная конструкция должна начинаться с "=!" и присваивать значение переменной "Результат".
Например: "=! З=Новый Запрос("ВЫБРАТЬ СУММА(Т.Сумма) КАК Сумма ИЗ Документ.РеализацияТоваровУслуг.Товары КАК Т ГДЕ Т.Ссылка=&П"); З.УстановитьПараметр("П",RC[-1]); В=З.Выполнить().Выбрать(); Результат=?(В.Следующий(),В.Сумма,0);".
Все вычисления и выполнение подобного кода производится в безопасном режиме. Для встроенных функций есть удобный конструктор.
Возможна сортировка по строкам и колонкам выбранных областей (диапазонов) ячеек. При копировании ячеек, удалении или добавлении строк, перемещении областей таблицы, формулы в ячейках копируются (переносятся) корректно.
Все действия над ячейками, строками ячеек и колонками стоит выполнять из контекстного меню ячеек, строк и колонок.
Ну и ложка дёгтя.
ВНИМАНИЕ!!! НЕЛЬЗЯ выполнять действия над таблицей из меню Таблица/Ячейки, а именно: РАЗДВИНУТЬ, РАЗБИТЬ ЯЧЕЙКУ, ВСТАВИТЬ СТРОКИ ВЫШЕ,ВСТАВИТЬ СТРОКИ НИЖЕ, УДАЛИТЬ СТРОКИ, ВСТАВИТЬ КОЛОНКИ СЛЕВА, ВСТАВИТЬ КОЛОНКИ СПРАВА, УДАЛИТЬ КОЛОНКИ, ОЧИСТИТЬ СОДЕРЖИМОЕ, ОЧИСТИТЬ ВСЕ. Данные действия приводят к разсогласованию формул с ячейками и, к сожалению, пока не удается ни удалить из меню Таблица/Ячейки данные действия, ни перехватить их программно. В контекстном меню ячеек есть команды РАЗДВИНУТЬ, УДАЛИТЬ СТРОКИ, УДАЛИТЬ КОЛОНКИ, ВСТАВИТЬ СТРОКИ, ВСТАВИТЬ КОЛОНКИ, ОЧИСТИТЬ ВСЕ, ОЧИСТИТЬ СОДЕРЖИМОЕ, которых достаточно для выполнения аналогичных действий.
Также необходимо с осторожностью вставлять данные по комбинации клавиш Ctrl-V и Shift-Ins из буфера обмена, т.к. данные действия пока никак не изменяют (не очищают) формулы в вставляемой области таблицы.
Техническая информация:
Инструмент выполнен в виде внешнего отчета, не требует изменения конфигурации. Платформа не ниже 8.3.13. Режим запуска Управляемое приложение. Тонкий или толстый клиент. Версия БСП и ее наличие не имеет принципиального значения. В худшем случае, не будет работать механизм фонового выполнения расчетных операций при достижении определенного пользователем порогового значения количества формул. Желательно отключить для пользователя режим Защиты от опасных действий. В противном случае инструмент не получится открыть из меню Файл/Открыть, а при подключении внешнего отчета будет выдавать ошибку при выполнении в фоне (при достижении установленного пользователем количества формул) и выполнение в фоне придется отключить в настройках.
Лицензия привязывается к компьютеру. Если база клиент-серверная или работает на терминальном сервере лицензия привязывается к серверу и инструмент становится доступен всем пользователям подключенным к серверу. При первом запуске формируется и выводится код, который вместе с электронным адресом необходимо отправить в техподдержку. На основании данного кода будет сформирован ключ регистрации.
Код модуля отчета закрыт.
В ближайших планах:
- Наполнение встроенными функциями.
- Добавление листов.
История версий:
1.2.2 Появилась возможность использования в конфигурациях на обычных формах в режиме запуска управляемое приложение (Для БП 2.0, ЗУП 2.5, УТ 10.3, КА 1.1).
1.2.3 Добавлена расшифровка.
Вопросы, предложения, конструктивная критика приветствуются.
Пример 1 (Презентация)
Пример 2
Настройки
Достоинства
- Инструмент рассчитан на обычных пользователей 1С.
- Прост в освоении и удобен в использовании.
- Возможность быстрого получения данных 1С.
- Интуитивно понятный, не перегруженный интерфейс.
- Отсутствие необходимости изменения конфигурации.
- Адекватная цена.
Гарантия возврата денег
ООО "Инфостарт" гарантирует Вам 100% возврат оплаты, если программа не соответствует заявленному функционалу из описания. Деньги можно вернуть в полном объеме, если вы заявите об этом в течение 14-ти дней со дня поступления денег на наш счет.
Программа настолько проверена в работе, что мы с полной уверенностью можем дать такую гарантию. Мы хотим, чтобы все наши покупатели оставались довольны покупкой.
Для возврата оплаты просто свяжитесь с нами.