Отчет о постановлениях об АП |
Порядок настройки пресета
С помощью команды "Создать новый пресет" создайте пресет "Отчет о постановлениях об АП".Первично пользователя интересуют постановления (документы) и объекты по которым выносились постановления. На вкладке "Строки" формы "Настройка пресетов" настройте стоки Документ -> Объект. Рис. 1349 Сохраните настройки пресета. Подробно о настройке строк смотри раздел "Вкладка "Строки" формы "Настройка пресетов" или раздел "Настройка пресета в форме "Настройка пресетов". Данными действиями создана структура данных с указанием типов строк и родительских связей для вложенных записей для основной колонки создаваемой нами таблицы. Далее необходимо указать параметры выбранных нами типов данных (атрибуты). На вкладке "Колонки" формы "Настройка пресетов" настройте колонки "Название объекта", "Номер объекта", "Строительный адрес объекта". Рис. 1350 Сохраните изменения в пресете. Подробно о настройке колонок смотри раздел "Вкладка "Колонки" формы "Настройка пресетов" или в разделе "Настройка пресета в форме "Настройка пресетов". Для отображения в форме "Управления данными" документов только вида "Постановление" во вкладке "Фильтры" настройте фильтр по виду документа "Постановление" Рис. 1351 Сохраните изменения в пресете. Подробно о настройке фильтров смотри раздел "Вкладка "Фильтры" формы "Настройка пресетов" или в разделе "Настройка пресета в форме "Настройка пресетов". Форма "Управление данными" при наличии соответствующих данных примет следующий вид. Рис. 1352 На рис. 1352 зеленым отражены строки с видом документов "Постановление" и дочерние строки с типом данных объект. Т.к. атрибуты строки документ во вкладке "Колонки" не задавались зеленая строка "Документ" пуста. Обратите внимание на строку (помечена красной стрелкой), неимеющей вложенного объекта. Наведите на указанную строку курсор. С помощью команды "Открыть в отдельной форме запись для выбранной строки" Рис. 1353 Откроется форма "Постановление" перейдите на вкладку "Объекты" Рис. 1354 На вкладке отсутствует запись объекта связанного с документом. Принимаем решение игнорировать такие записи постановлений, т.к. такое постановление не действительно для органов государственного строительного надзора без объекта проверки. Скроем строки с типом данных "Документ" (Постановление). Для этого у свойства "Дерево - как использовать значения строки в иерархическом списке" установим значение "Скрытая строка как связующее звено между строками (только уникальные строки)" Рис. 1355 Сохраните изменения в пресете. Форма "Управление данными" после обновления формы примет следующий вид Рис. 1356 В форме "Управления данными" получили список объектов на которых составлены постановления об административных правонарушениях. Но в видимой части пресета отсутствует информация о постановлениях об административных правонарушениях. Для отображения информации дополнительно в связующем строку и колонку типе данных "Документ" установите настройку между документом и объектом. Рис. 1409 Сохраните изменения в пресете. Добавьте свойства атрибуты документов (колонки).
Рис. 1410 Сохраните изменения в пресете. Для отображения информации дополнительно о количестве нарушений (несоответствий) в связующем строку и колонку типа данных "Документ" добавьте связующую строку и колонку типа данных "Несоответствие" Рис. 1411 ВНИМАНИЕ! Так как связующий тип данных "Несоответствие" добавляется к связующему типу данных "Документ" настройка свойства "Ручная настройка отображения колонок для каждой строки" не производится. Добавьте свойства атрибуты несоответствий (колонки).
Рис. 1412 Сохраните изменения в пресете. Форма "Управление данными" после обновления формы примет следующий вид Рис. 1413 Для отображения информации исполнителе документа в связующем строку и колонку типа данных "Документ" добавьте связующую строку и колонку типа данных "Документ: дополнительная запись" Рис. 1414 Сохраните изменения в пресете. ВНИМАНИЕ! Так как связующий тип данных "Документ: дополнительная запись" добавляется к связующему типу данных "Документ" настройка свойства "Ручная настройка отображения колонок для каждой строки" не производится. Тип данных "Документ: дополнительная запись" это дополнительная таблица документа в которой находятся данные по документу. Что "вытащить" из таблицы физические лица необходимо установить связь между связующим типом данных "Документ: дополнительная запись" и связующим типам данных "Физические лица" Рис. 1415 Сохраните изменения в пресете. ВНИМАНИЕ! Так как связующий тип данных "Физические лица" добавляется к связующему типу данных "Документ: дополнительная запись" настройка свойства "Ручная настройка отображения колонок для каждой строки" не производится. Добавьте свойства атрибуты физического лица составившего документ (колонки).
Рис. 1416 Сохраните изменения в пресете. Форма "Управление данными" после обновления формы примет следующий вид Рис. 1417 Для добавления в отчет информации о сумме штрафа к связующему типу данных "Документ" необходимо добавить связующий тип данных "Документ: дополнительная запись" Рис. 1418 Переименуйте связующий тип данных "Документ: дополнительная запись" в "Штраф: Документ: дополнительная запись". Сохраните изменения в пресете. Добавьте колонку "Целое число 10 записи [IDOwner]". Рис. 1419 ВНИМАНИЕ! Колонка "Целое число 10 записи [IDOwner]" поддерживает значение поля "Штраф в рублях" в форме "Постановление". Рекомендуем использовать указанную колонку только для получения отчета по штрафам в постановлениях старой технологии. Для создания новой конфигурации надзора рекомендуем использовать колонку "Сумма по договору" Переименуйте колонку "Целое число 10 записи [IDOwner]" в "Сумма штрафа" Рис. 1420 Сохраните изменения в пресете. Форма "Управление данными" после обновления формы примет следующий вид Рис. 1421 Для отображения в форме "Управления данными" сумм штрафа во вкладке "Фильтры" настройте фильтр по параметру штрафа" Рис. 1422 Сохраните изменения в пресете. Форма "Управление данными" после обновления формы примет следующий вид Рис. 1423 Для отображения в форме "Управления данными" ответственных лиц во вкладке "Фильтры" настройте фильтр по лицам участвующим в проверке со стороны органа надзора. Рис. 1424 Сохраните изменения в пресете. Форма "Управление данными" после обновления формы примет следующий вид Рис. 1425 Обратите внимание на колонку "Номер постановления" по одному объекту имеется два постановления, но в соответствующей ячейке выводится одно. Для отображения всей информации ячейки во вкладке "Оформление" установите настройки Рис. 1426 Сохраните изменения в пресете. Форма "Управление данными" после обновления формы примет следующий вид Рис. 1427 Обратите внимание на информацию в колонках "Номер постановления" и "Сумма штрафа" на два постановления указана одно сумма штрафа. Для отображения всех штрафов на вкладке "Колонки" для колонки "Сумма штрафа" установите группу данных "Новая группа", которая имеет настройку режима "Объединение в одну колонку всех вложенных колонок" Рис. 1428 Сохраните изменения в пресете. Форма "Управление данными" после обновления формы примет следующий вид. Рис. 1429 Переименуйте группу "Новая группа" в "Сумма штрафа". Программа "Стройформ" позволяет кроме вывода текстовой информации позволяет суммировать количество штрафов в ячейке. Для суммирования штрафа добавьте колонку "Целое число 10 записи [IDOwner]" и настройте как показано на рис. 1430 Рис. 1430 Сохраните изменения в пресете. Форма "Управление данными" после обновления формы примет следующий вид Рис. 1431 Для расчета общей суммы штрафов за период необходимо с помощью команды "Добавить вычисляемую строку" добавить вычисляемую строку и переименуйте её в "Итого сумма штрафов за период". Рис. 1467 Выберите язык написания скрипта и напишите скрипт.
Imports System Imports System.Text Imports System.Data Imports System.Drawing Imports System.Xml Imports System.Collections Imports System.Collections.Generic Imports System.ComponentModel Imports System.Reflection Imports System.IO Imports System.Text.RegularExpressions Imports System.Windows.Forms Imports Microsoft.VisualBasic Imports CommonLibrary
Namespace SFExpressionEvaluator
Public Class CSFScript4TreeViewManagerData
'SFScriptExecute - скрипт, который вызывается программой Стройформ для каждой строки таблицы и указанной колонки Public Function SFScriptExecute(ByRef dtMain As DataTable, ByRef pCurrentRow As DataRow, ByRef pCurrentColumn As DataColumn) As Object ' Замените ниже расположенные строки на аналогичные строки, полученные при написании скриптов. Dim ID As Long = CommonLibrary.SF.Convert.ToLong(pCurrentRow("ID")) ' ID строки Dim ParentID As Long = CommonLibrary.SF.Convert.ToLong(pCurrentRow("ParentID")) ' ID родительской строки Dim CurrentObjectID As Long = CommonLibrary.SF.Convert.ToLong(pCurrentRow("CurrentObjectID")) ' ID записи в базе данных Dim iObjectType As Long = CommonLibrary.SF.Convert.ToLong(pCurrentRow("iObjectType")) ' Тип записи Dim PaperTable_IDOwner__21 As Long = CommonLibrary.SF.Convert.ToLong(pCurrentRow("PaperTable_IDOwner__21")) ' Целое число 10 записи [IDOwner]
Select Case iObjectType Case eObjectType.tBaseClassObject Dim pDT As DataTable = dtMain.Clone GetChildRowsClone(dtMain, ParentID, pDT, eObjectType.tEntity)
Dim Summa4_PaperTable_IDOwner__21 As Long = 0
For Each row As DataRow In pDT.Rows Dim iVolume As Long = CommonLibrary.SF.Convert.ToLong(row("PaperTable_IDOwner__21")) Summa4_PaperTable_IDOwner__21 += iVolume Next pCurrentRow("PaperTable_IDOwner__21") = Summa4_PaperTable_IDOwner__21 pCurrentRow("FIO_Nazvanie__17") = "Итого сумма штрафов за период"
End Select
Return Nothing End Function
Private Sub GetChildRowsClone(ByRef dtMain As DataTable, ByVal ParentID As Long, ByRef pDT As DataTable, ByVal iDestObjectType As eObjectType) For Each row As DataRow In dtMain.Select(" [ParentID] = " & ParentID) Dim iObjectType As Long = CommonLibrary.SF.Convert.ToLong(row("iObjectType")) ' Тип записи
If iObjectType = iDestObjectType Then pDT.ImportRow(row) End If
GetChildRowsClone(dtMain, SF.Convert.ToLong(row("ID")), pDT, iDestObjectType) Next End Sub
End Class End Namespace
Сохраните изменения в пресете. Подробно о написании скрипта смотри раздел "Написание скриптов при настройке пресета". Форма "Управление данными" при наличии соответствующих данных примет следующий вид. Рис. 1468
Для полного понимания процесса создания пресета рекомендуем ознакомится со всеми описаниями создания пресетов в разделе: - Группа пресетов "Управление проектной документацией" - Конфигурация АС "Стройформ": Управление проектом - Графики (отчеты) проверок органов ГСН - Графики проверок в системе качества
|
Руководство пользователя версия 7.4.2013.51, скачать в формате HelpFile.chm, HelpFile.pdf, HelpFile.doc При полном или частичном использовании материалов сайта, ссылка на сайты www.stroyform.ru и www.stroyform.su обязательна support@stroyform.ru. |