Учет несоответствий, связанных с документами |
Порядок настройки пресета
С помощью команды "Создать новый пресет" создайте пресет "Учет несоответствий, связанных с документами". На вкладке "Строки" формы "Настройка пресетов" настройте стоку Документ, как показано на рис. 1779. Рис. 1779 Сохраните настройки пресета. Подробно о настройке строк смотри раздел "Вкладка "Строки" формы "Настройка пресетов" или раздел "Настройка пресета в форме "Настройка пресетов". Добавьте строку "Несоответствия" и настройте фильтр как показано на рис. 1780. Рис. 1780 Создана структура данных с указанием типов строк и родительских связей для вложенных записей для основной колонки создаваемой нами таблицы. Далее необходимо указать параметры выбранных нами типов данных (атрибуты). Параметры материалов, поступление и расход отображаются в колонках. На вкладке "Колонки" формы "Настройка пресетов" настройте колонки
Рис. 1781 Сохраните изменения в пресете. Подробно о настройке колонок смотри раздел "Вкладка "Колонки" формы "Настройка пресетов" или в разделе "Настройка пресета в форме "Настройка пресетов". На вкладке "Фильтры" формы "Настройка пресетов" настройте фильтрацию по текущему документу, как показано на рис. 1782 Настройка необходима для работы в составном пресете, например, "Контроль сроков устранения несоответствий ПСД (версия 2)": фильтровался выбранный документ проектно-сметной документации, Рис. 1782 Сохраните изменения в пресете. Подробно о настройке фильтров смотри раздел "Вкладка "Фильтры" формы "Настройка пресетов" или в разделе "Настройка пресета в форме "Настройка пресетов". Форма "Управление данными" при наличии в базе данных соответствующей информации примет следующий вид. рис. 1783 В созданном пресете пользователь может изменить даты. Для добавления несоответствия к документу необходимо в настройках пресета (вкладка "Строки") сделать видимой строку "Документ". Для автоматического контроля срока устранения несоответствий пользователь может для строки "Несоответствия" в параметре "Содержимое скрипта" написать скрипт следующего содержания
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
'SFScriptExecuteTester - функция тестирования скрипта SFScriptExecute() Public Function SFScriptExecuteTester() As DataTable 'Файл sf_table4script.xml можно получить при экспорте таблицы для написания скриптов Dim dtMain As New DataTable dtMain.ReadXml(Application.StartupPath & "\sf_table4script.xml")
'Замените FillObject на соответствующее обозначение колонки для которой Вы пишете скрипт. Dim sCurrentColumn As String = "FillObject" Dim pCurrentColumn As DataColumn = dtMain.Columns.Item(sCurrentColumn)
For Each pCurrentRow As DataRow In dtMain.Rows Me.SFScriptExecute(dtMain, pCurrentRow, pCurrentColumn) Next
Return dtMain End Function
'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 IsCurrent As Long = CommonLibrary.SF.Convert.ToLong(pCurrentRow("IsCurrent")) ' Выбранная в данный момент строка 'Dim IsChecked As Long = CommonLibrary.SF.Convert.ToLong(pCurrentRow("IsChecked")) ' Отмеченные флажком записи 'Dim IsVisible As Long = CommonLibrary.SF.Convert.ToLong(pCurrentRow("IsVisible")) ' Видимость строк Dim FillObject As String = CommonLibrary.SF.Convert.ToString(pCurrentRow("FillObject")) ' Содержание несоответствия 'Dim FullSubject As String = CommonLibrary.SF.Convert.ToString(pCurrentRow("FullSubject")) ' Обозначение записи расширенное 'Dim IDBCODestRow As Long = CommonLibrary.SF.Convert.ToLong(pCurrentRow("IDBCODestRow")) ' ID строки в базе данных равный уникальному ID строки из пресета 'Dim iArchivStatus As Long = CommonLibrary.SF.Convert.ToLong(pCurrentRow("iArchivStatus")) ' Несоответствие устранено Dim Violation_DateTo As Date = CommonLibrary.SF.Convert.ToDate(pCurrentRow("Violation_DateTo")) ' Дата до которой необходимо устранить несоответствие Dim Violation_DateFrom As Date = CommonLibrary.SF.Convert.ToDate(pCurrentRow("Violation_DateFrom")) ' Дата фактического устранения несоответствия
If Violation_DateTo < Now Then If IsDefaultDate(Violation_DateFrom) Then 'pCurrentRow("FillObject__15") = "СПИСАН МАТЕРИАЛ. Место хранения не определено" 'DisplayMessageInfo("СПИСАН МАТЕРИАЛ") 'DisplayMessageWarning("Место хранения не определено") 'Else pCurrentRow("FillObject") = "СРОК УСТРАНЕНИЯ НЕСООТВЕТСТВИЯ ИСТЕК: " & FillObject DisplayMessageWarning("ИСТЕК СРОК УСТРАНЕНИЯ НЕСООТВЕТСТВИЙ") End If End If
Return pCurrentRow(pCurrentColumn) End Function End Class End Namespace
Не забудьте охранить изменения в пресете. Подробно о написании скрипта смотри раздел "Написание скриптов при настройке пресета". ВНИМАНИЕ! Указанный скрипт написан на языке Microsoft Visual Basic
В случае написания вышеуказанного спкипта в параметре "Содержимое скрипта" для строки "Несоответствия" форма "Управление данными" примет вид Рис. 1784 "Недостатком" данного скрипта является многократно всплывающее сообщение о истечении срока устранения. Пользователь может самостоятельно изменить скрипт, закомментировав строку DisplayMessageWarning("ИСТЕК СРОК УСТРАНЕНИЯ НЕСООТВЕТСТВИЙ")
Для полного понимания процесса создания пресета рекомендуем ознакомится со всеми описаниями создания пресетов в разделе: - Группа пресетов "Управление проектной документацией" - Конфигурация АС "Стройформ": Управление проектом - Графики (отчеты) проверок органов ГСН - Графики проверок в системе качества
|
Руководство пользователя версия 7.4.2013.51, скачать в формате HelpFile.chm, HelpFile.pdf, HelpFile.doc При полном или частичном использовании материалов сайта, ссылка на сайты www.stroyform.ru и www.stroyform.su обязательна support@stroyform.ru. |