Учет первичных документов поступивших ресурсов |
Порядок настройки пресета
Пресет "Учет первичных документов поступивших ресурсов" имеет ссылки на другие пресеты: - Учет товарных накладных, ТОРГ-12; - Учет товарно-транспортных накладных, 1-Т, которые могут использоваться пользователем самостоятельно. перед настройкой пресета "" предварительно настройте указанные пресеты.
С помощью команды "Создать новый пресет" создайте пресет "Учет первичных документов поступивших ресурсов". На вкладке "Строки" формы "Настройка пресетов" настройте стоки Группа ресурсов -> Ресурс. Рис. 1647 Сохраните настройки пресета. Подробно о настройке строк смотри раздел "Вкладка "Строки" формы "Настройка пресетов" или раздел "Настройка пресета в форме "Настройка пресетов". Добавьте строку "Поступление ресурса" и настройте фильтр как показано на рис. 1648 Рис. 1648 Для отображения итоговых сумм фактического поступления необходимо в строке "Ресурс". выбрать язык написания скрипта в строке "Ресурс" как показано на рис. 1649. Написание скрипта проводится после установки настройки всех строк и колонок. Рис. 1649 в разделе "Содержимое скрипта" напишите скрипт следующего содержания
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 IDBCODestRow As Long = CommonLibrary.SF.Convert.ToLong(pCurrentRow("IDBCODestRow")) ' ID строки в базе данных равный уникальному ID строки из пресета Dim IDDimension As Long = CommonLibrary.SF.Convert.ToLong(pCurrentRow("IDDimension")) ' Единица измерения объема/количества Dim MaterialEntity_iVolumeSmeta As Decimal = CommonLibrary.SF.Convert.ToDecimal(pCurrentRow("MaterialEntity_iVolumeSmeta")) ' Объем/количество поступления
Select Case iObjectType Case eObjectType.tMaterial Dim pDT As DataTable = dtMain.Clone GetChildRowsClone(dtMain, ID, pDT, eObjectType.tMaterialEntity)
Dim Summa4_MaterialEntity_iVolumeSmeta As Decimal = 0
For Each row As DataRow In pDT.Rows Dim iVolumePostuplenie As Decimal = CommonLibrary.SF.Convert.ToDecimal(row("MaterialEntity_iVolumeSmeta")) ' Объем/количество расхода Summa4_MaterialEntity_iVolumeSmeta += iVolumePostuplenie Next
pCurrentRow("MaterialEntity_iVolumeSmeta") = Summa4_MaterialEntity_iVolumeSmeta 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
Сохраните изменения в пресете. Подробно о написании скрипта смотри раздел "Написание скриптов при настройке пресета". ВНИМАНИЕ! Указанный скрипт написан на языке Microsoft Visual Basic
Создана структура данных с указанием типов строк и родительских связей для вложенных записей для основной колонки создаваемой нами таблицы. Далее необходимо указать параметры выбранных нами типов данных (атрибуты). Параметры материалов, поступление и расход отображаются в колонках. На вкладке "Колонки" формы "Настройка пресетов" настройте колонки
Рис. 1650 Сохраните изменения в пресете. Добавьте связующий строку и колонку вид данных "Объект", переименуйте колонку в "Поступил на объект" и настройте как показано на рис. 1651 Рис. 1651 Сохраните изменения в пресете. Добавьте колонку для вывода информации по объекту поступления ресурса Рис. 1652 Сохраните изменения в пресете. Настройте фильтры по фактическому поступлению ресурса как показано на рис. 1653 рис. 1653 Для вывода списков первичных документов и инструмента доступа к файлам на вкладке "Графика" формы "Управление данными" добавьте данные: основной список данных и гармошку, настройте гармошку как показано на рис. 1654. рис. 1654 Для вывода информации о товарных накладных, ТОРГ-12 добавьте во вкладке "Графики" форму "Управление данными" и настройте её как показано на рис. 1655 Рис. 1655 Сохраните изменения в пресете. На рис. 1655 показана настройка параметра "Ссылка на пресет" вложенной формы "Управление данными", указана ссылка на отдельный предварительно созданный пресет "Учет товарных накладных, ТОРГ-12". ВНИМАНИЕ! Пресет "Учет товарных накладных, ТОРГ-12" можно использовать как составную часть пресета "Учет первичных документов поступивших ресурсов", так так и отдельно, как список документов "Товарные накладные, ТОРГ-12". Для вывода информации о счет-фактурах добавьте во вкладке "Графики" форму "Управление данными" и настройте её как показано на рис. 1656. Рис. 1656 Сохраните изменения в пресете. На рис. 1656 показана настройка параметра "Ссылка на пресет" вложенной формы "Управление данными", указана ссылка на отдельный предварительно созданный пресет "Учет счет - фактур". ВНИМАНИЕ! Пресет "Учет счет - фактур" можно использовать как составную часть пресета "Учет первичных документов поступивших ресурсов", так так и отдельно, как список документов "Счет - фактуры". Для вывода информации о товарно-транспортных накладных добавьте во вкладке "Графики" форму "Управление данными" и настройте её как показано на рис. 1657. Рис. 1657 Сохраните изменения в пресете. На рис. 1657 показана настройка параметра "Ссылка на пресет" вложенной формы "Управление данными", указана ссылка на отдельный предварительно созданный пресет "Учет товарно-транспортных накладных, 1-Т". ВНИМАНИЕ! Пресет "Учет счет - фактур" можно использовать как составную часть пресета "Учет первичных документов поступивших ресурсов", так так и отдельно, как список документов "Товарно-транспортных накладных, 1-Т". Форма "Управление данными" при наличии в базе данных соответствующей информации и соответствующих настроек связанных пресетов примет следующий вид. Рис. 1658 На рис. 1658 видно состояние по наличию первичных документов записи поступления арматурной стали № 11: - информация о товарной накладной отсутствует; - информация о счет-фактуре в базе данных присутствует, но отсутствует "скан" документа; - информация о товарно-транспортной накладной и "скане" документа присутствует. Созданный пресет позволяет добавить новую группу материалов. Для добавления новой группы вызовите команду "Добавить новую группу материалов как корневую без привязки к записям" или "Добавить новую группу материалов к выбранной записи".. Рис. 1659 Созданный пресет позволяет добавить новый материал. Для добавления нового материала вызовите команду "Добавить новый материал к выбранной записи". Рис. 1660 Созданный пресет позволяет добавить фактическое поступление. Для добавления фактического поступления вызовите команду "Добавить новое поступление ресурса по факту к выбранной записи". Рис. 1661 Созданный пресет позволяет добавить новые документы "Товарная накладная", "Счет фактура" и "Товарно-транспортная накладная". Для добавления фактического поступления вызовите команду: - "Добавить новый документ для выбранной записи: счет фактура". - "Добавить новый документ для выбранной записи: товарная накладная". - "Добавить новый документ для выбранной записи: товарно-транспортная накладная" рис. 1662 Для отображения информации в соответствующей панели информации необходимо обновить форму "Управление данными" Созданный пресет позволяет добавить "скан" в документ "Счет фактура". Для добавления "скана" вызовите команды указанные на рис. 1663 или "перетащить" файл из соответствующей папки Рис. 1663 ВНИМАНИЕ! При использовании настройки с параметром "Ссылка на пресет" в случае копирования основного пресета необходимо копировать и связанные пресеты. При использовании параметра "Пресет как строка" при копировании основного пресета копирование связанных пресетов не требуется. Для настройки параметра "Пресет как строка" в строке параметра "Пресет как строка" вызовите команду "Загрузить пресет из файла" Рис. 1737 В открывшейся форме выберите файл и нажмите кнопку "Открыть" Рис. 1738 При успешном выполнении команды появится сообщение "Пресет из файла успешно загружен", как на рис. 1739 Рис. 1739 Сохраните изменения в пресете.
Для полного понимания процесса создания пресета рекомендуем ознакомится со всеми описаниями создания пресетов в разделе: - Группа пресетов "Управление проектной документацией" - Конфигурация АС "Стройформ": Управление проектом - Графики (отчеты) проверок органов ГСН - Графики проверок в системе качества
|
Руководство пользователя версия 7.4.2013.51, скачать в формате HelpFile.chm, HelpFile.pdf, HelpFile.doc При полном или частичном использовании материалов сайта, ссылка на сайты www.stroyform.ru и www.stroyform.su обязательна support@stroyform.ru. |