Runa
Администратор
Задача: составить сводную таблицу по каждому контрагенту на основе поступления/отпуска товара и прихода/расхода денег с получением текущего остатка.
Для решения будет использоваться форма баланса.
Составляем необходимую структуру проекта, состоящую из следующих объектов:
1. Контрагенты
2. Товары
3. Формы поступления и отпуска товара (форма связи с дочерним объектом состава поступления/отпуска)
4. Объекты прихода и расхода финансовых средств
Добавляем форму итогов на базе объекта клиентов для составления общего баланса с итоговым результатом. Условий по датам и по значениям в нём не будет - упрощённый вариант общего итога.
В конечном расчёте указывается итоговая формула сбора данных из результирующих полей.
![Форма общего итога - расчёт итога.png Форма общего итога - расчёт итога.png](http://runabase.ru/forum/data/attachments/0/500-cdbe46aa9874f47814686c3686737051.jpg)
В данной форме мы получили итоговый баланс, который даёт общий результат. Чтобы иметь возможность детализации по операциям с каждым контрагентом - надо использовать форму баланса.
На первой вкладке свойств, по общей схеме, задаются:
- имя формы;
- подгруппа (если надо);
- объект, для записей которого будет производится получение результата;
- условие отображения числа записей объекта.
Ниже расположена вкладка с настройкой основных свойств формы.
Для таблицы баланса обязательно определение типа операции, наличие её даты, а также суммы прихода и расхода. Пятое поле является расчётным.
Все эти графы могут быть переименованы пользователем по своему усмотрению. Например, графам "Приход" и "Расход" мы изменим имена на "Плюс" и "Минус".
Тип операции может быть скрыт, а для поля даты можно установить порядок сортировки: по возрастанию или убыванию. Расчётное поле баланса также можно скрыть свойством справа от него.
На нижней вкладке, из списка полей объекта, выбираются те, которые будут видны в списке записей формы. В нашем случае это только одно наименование клиента. Для каждого поля, аналогично как в форме связи, можно задать условие фильтрации, а также исходное значения фильтра или его значение из объекта пользователей (для сетевой работы).
![Форма баланса - первая настройка.png Форма баланса - первая настройка.png](http://runabase.ru/forum/data/attachments/0/506-54966a1959f21f415ed15c32b2c47eb7.jpg)
На вкладке "Дополнительные поля" можно задать поля, которые будут содержать информацию из каждого объекта операций. Вернёмся к ним позже.
Сохранив форму, приступим к настройке объектов, из которых будет браться информация по операциям с контрагентом.
Переходим на вкладку "Объекты". По кнопке "Добавить" открывается окно, в котором для первого поля надо указать объект с операциями. После выбора нужного, если в нём несколько полей, содержащих ссылку на контрагента - выбираем нужное. Если ссылка только одна - она будет автоматически подставлена.
Имя объекта будет использовано для задания типа операции. Для остальных полей формы баланса активируются соответствующие поля для заполнения: "Дата", "Плюс" и "Минус". В них выбираются соответствующие типы (дата и число) из указанного объекта.
Если задано поле прихода ("Плюс"), то второе поле расхода ("Минус") блокируется, не позволяя использовать данный объект для расхода. Соответственно, задав расход - нельзя будет заполнить поле прихода.
Таким образом добавляем все объекты, имеющие ссылку на объект контрагентов и участвующие в расчёте баланса.
![Добавление в баланс необходимых операций.png Добавление в баланс необходимых операций.png](http://runabase.ru/forum/data/attachments/0/507-0d1775b51a028eb7b6f727e783b41641.jpg)
Теперь для каждого контрагента можно получить детализированный баланс по всем операциям, который может быть использован для сверки.
Результат каждой операции плюсуется или минусуется к предыдущему итоговому значению от последней операции. Итог будет в конце или в начале списка (в зависимости от настройки порядка сортировки для даты).
![Общий баланс по всем контрагентам.png Общий баланс по всем контрагентам.png](http://runabase.ru/forum/data/attachments/0/508-f4fa1db1cb92d132c325580da80942e2.jpg)
![Баланс по 3-ей компании.png Баланс по 3-ей компании.png](http://runabase.ru/forum/data/attachments/0/511-77ffd3ed9c34e66e52bd926eb86635d1.jpg)
Теперь вернёмся к дополнительным полям в свойствах формы баланса.
![Настройка дополнительных полей формы баланса.png Настройка дополнительных полей формы баланса.png](http://runabase.ru/forum/data/attachments/0/512-28c7d4cc92a7ea96a8206a4582e2201a.jpg)
При изменении свойств формы, на вкладке "Дополнительные поля" доступны 5 типов полей, которые могут быть использованы для добавления информации в итоговую шахматку. Добавим строковый тип поля, который переименуем по двойному клику в "Примечания". Обратите внимание, что данный способ задания имени не является типовым в конструкторе, а применяется только в данном случае.
![Добавление строкового поля с переименованием.png Добавление строкового поля с переименованием.png](http://runabase.ru/forum/data/attachments/0/513-0aa2396c7b8dcff3e2a57cb0edf7549a.jpg)
Сохранив форму, переходим на вкладку "Объекты", где для каждого, изменяя его, теперь можно указать строковое поле, которое будет отображаться в дополнительной графе.
Теперь в форме баланса в последней графе будут отражена дополнительная информация из всех объектов по каждой операции.
![Баланс с примечаниями из всех объектов.png Баланс с примечаниями из всех объектов.png](http://runabase.ru/forum/data/attachments/0/514-2be9be262ad4b7def7bbb42db3266648.jpg)
Пример проекта в приложении.
В качестве второго примера приложен проект учёта доходов и расходов с итоговым балансом по валютам.
![Баланс по валютам в проекте учёта доходов и расходов.png Баланс по валютам в проекте учёта доходов и расходов.png](http://runabase.ru/forum/data/attachments/0/515-ad71e5166fceecf7a6b6c1244fa89499.jpg)
Для решения будет использоваться форма баланса.
Составляем необходимую структуру проекта, состоящую из следующих объектов:
1. Контрагенты
2. Товары
3. Формы поступления и отпуска товара (форма связи с дочерним объектом состава поступления/отпуска)
4. Объекты прихода и расхода финансовых средств
Добавляем форму итогов на базе объекта клиентов для составления общего баланса с итоговым результатом. Условий по датам и по значениям в нём не будет - упрощённый вариант общего итога.
В конечном расчёте указывается итоговая формула сбора данных из результирующих полей.
![Форма общего итога - расчёт итога.png Форма общего итога - расчёт итога.png](http://runabase.ru/forum/data/attachments/0/500-cdbe46aa9874f47814686c3686737051.jpg)
В данной форме мы получили итоговый баланс, который даёт общий результат. Чтобы иметь возможность детализации по операциям с каждым контрагентом - надо использовать форму баланса.
На первой вкладке свойств, по общей схеме, задаются:
- имя формы;
- подгруппа (если надо);
- объект, для записей которого будет производится получение результата;
- условие отображения числа записей объекта.
Ниже расположена вкладка с настройкой основных свойств формы.
Для таблицы баланса обязательно определение типа операции, наличие её даты, а также суммы прихода и расхода. Пятое поле является расчётным.
Все эти графы могут быть переименованы пользователем по своему усмотрению. Например, графам "Приход" и "Расход" мы изменим имена на "Плюс" и "Минус".
Тип операции может быть скрыт, а для поля даты можно установить порядок сортировки: по возрастанию или убыванию. Расчётное поле баланса также можно скрыть свойством справа от него.
На нижней вкладке, из списка полей объекта, выбираются те, которые будут видны в списке записей формы. В нашем случае это только одно наименование клиента. Для каждого поля, аналогично как в форме связи, можно задать условие фильтрации, а также исходное значения фильтра или его значение из объекта пользователей (для сетевой работы).
![Форма баланса - первая настройка.png Форма баланса - первая настройка.png](http://runabase.ru/forum/data/attachments/0/506-54966a1959f21f415ed15c32b2c47eb7.jpg)
На вкладке "Дополнительные поля" можно задать поля, которые будут содержать информацию из каждого объекта операций. Вернёмся к ним позже.
Сохранив форму, приступим к настройке объектов, из которых будет браться информация по операциям с контрагентом.
Переходим на вкладку "Объекты". По кнопке "Добавить" открывается окно, в котором для первого поля надо указать объект с операциями. После выбора нужного, если в нём несколько полей, содержащих ссылку на контрагента - выбираем нужное. Если ссылка только одна - она будет автоматически подставлена.
Имя объекта будет использовано для задания типа операции. Для остальных полей формы баланса активируются соответствующие поля для заполнения: "Дата", "Плюс" и "Минус". В них выбираются соответствующие типы (дата и число) из указанного объекта.
Если задано поле прихода ("Плюс"), то второе поле расхода ("Минус") блокируется, не позволяя использовать данный объект для расхода. Соответственно, задав расход - нельзя будет заполнить поле прихода.
Таким образом добавляем все объекты, имеющие ссылку на объект контрагентов и участвующие в расчёте баланса.
![Добавление в баланс необходимых операций.png Добавление в баланс необходимых операций.png](http://runabase.ru/forum/data/attachments/0/507-0d1775b51a028eb7b6f727e783b41641.jpg)
Теперь для каждого контрагента можно получить детализированный баланс по всем операциям, который может быть использован для сверки.
Результат каждой операции плюсуется или минусуется к предыдущему итоговому значению от последней операции. Итог будет в конце или в начале списка (в зависимости от настройки порядка сортировки для даты).
![Общий баланс по всем контрагентам.png Общий баланс по всем контрагентам.png](http://runabase.ru/forum/data/attachments/0/508-f4fa1db1cb92d132c325580da80942e2.jpg)
![Баланс по 1-ой компании.png Баланс по 1-ой компании.png](http://runabase.ru/forum/data/attachments/0/509-67df792a699028d088b6b2eecfdc03b7.jpg)
![Баланс по 2-ой компании.png Баланс по 2-ой компании.png](http://runabase.ru/forum/data/attachments/0/510-f46a70db6f982fa63a78717ed1d7aea8.jpg)
![Баланс по 3-ей компании.png Баланс по 3-ей компании.png](http://runabase.ru/forum/data/attachments/0/511-77ffd3ed9c34e66e52bd926eb86635d1.jpg)
Теперь вернёмся к дополнительным полям в свойствах формы баланса.
![Настройка дополнительных полей формы баланса.png Настройка дополнительных полей формы баланса.png](http://runabase.ru/forum/data/attachments/0/512-28c7d4cc92a7ea96a8206a4582e2201a.jpg)
При изменении свойств формы, на вкладке "Дополнительные поля" доступны 5 типов полей, которые могут быть использованы для добавления информации в итоговую шахматку. Добавим строковый тип поля, который переименуем по двойному клику в "Примечания". Обратите внимание, что данный способ задания имени не является типовым в конструкторе, а применяется только в данном случае.
![Добавление строкового поля с переименованием.png Добавление строкового поля с переименованием.png](http://runabase.ru/forum/data/attachments/0/513-0aa2396c7b8dcff3e2a57cb0edf7549a.jpg)
Сохранив форму, переходим на вкладку "Объекты", где для каждого, изменяя его, теперь можно указать строковое поле, которое будет отображаться в дополнительной графе.
Теперь в форме баланса в последней графе будут отражена дополнительная информация из всех объектов по каждой операции.
![Баланс с примечаниями из всех объектов.png Баланс с примечаниями из всех объектов.png](http://runabase.ru/forum/data/attachments/0/514-2be9be262ad4b7def7bbb42db3266648.jpg)
Пример проекта в приложении.
В качестве второго примера приложен проект учёта доходов и расходов с итоговым балансом по валютам.
![Баланс по валютам в проекте учёта доходов и расходов.png Баланс по валютам в проекте учёта доходов и расходов.png](http://runabase.ru/forum/data/attachments/0/515-ad71e5166fceecf7a6b6c1244fa89499.jpg)
Вложения
Последнее редактирование модератором: