1с программирование. Лекция 1 Вводное занятие. Инструктаж План разработка прикладных решений Общие сведения о системе
Скачать 2.39 Mb.
|
Лекция №21 Средства конфигурирования и администрирования системы 1С План: План счетов Регистр бухгалтерии План видов характеристик в бухгалтерском учете Что такое «План счетов» На этом занятии мы проиллюстрируем возможность ведения бухгалтерского учета средствами «1С:Предприятия». В рамках этого занятия мы не будем объяснять и рассматривать основы бухгалтерского учета. Поэтому если у вас нет знаний бухгалтерии, то, конечно, лучше сначала прочитать какую-нибудь популярную литературу о том, как вообще устроен бухгалтерский учет в нашей стране. Для организации бухгалтерского учета мы используем уже знакомый нам объект конфигурации – план видов характеристик и два новых объекта – План счетов и Регистр бухгалтерии. Регистр бухгалтерии будет использоваться нами для накопления данных о совершенных хозяйственных операциях. С помощью плана счетов мы будем описывать счета, в разрезе которых ведется учет, а план видов характеристик будет служить для описания объектов аналитического учета, в разрезе которых должен вестись учет на счетах. Сразу оговоримся, что план счетов, который мы будем использовать в нашей учебной конфигурации, очень сильно упрощен. Он содержит всего несколько условных счетов, которые, однако, позволят нам познакомиться с основными методами организации бухгалтерского учета средствами «1С:Предприятия». План видов характеристик в бухгалтерском учете Объект конфигурации План видов характеристик был подробно рассмотрен нами на предыдущем занятии, поэтому сейчас мы проиллюстрируем только использование этого объекта в контексте бухгалтерского учета. Бухгалтерский учет, как правило, подразумевает ведение аналитического учета на большинстве счетов. Для обозначения разрезов аналитического учета мы будем использовать термин виды субконто. То есть на каждом счете учет может вестись в разрезе нескольких видов субконто. А для обозначения конкретных объектов аналитического учета мы будем использовать термин субконто. Например, на 41 счете (Товары) учет ведется обычно в разрезе Номенклатуры и Складов, которые являются видами субконто. А вот конкретная номенклатура Паста шоколадная и конкретный склад Основной, указанные для некоторой проводки по 41 счету, – это субконто. Так вот, частным случаем использования плана видов характеристик является применение его для описания видов субконто. То есть все разрезы аналитического учета описываются в соответствующем плане видов характеристик, и там же задаются типы значений, которые могут принимать те или иные субконто. Добавление плана видов характеристик Приступим к созданию плана видов характеристик, который будет содержать описания разрезов аналитического учета – видов субконто. Откроем конфигуратор и добавим новый объект конфигурации План видов характеристик. Зададим его имя – ВидыСубконто. На закладке Подсистемы укажем, что план счетов будет отображаться в подсистеме Бухгалтерия. Поскольку нам понадобится некий вспомогательный справочник, в котором пользователи будут осуществлять «свободное творчество» по созданию значений новых объектов аналитического учета, добавим объект конфигурации Справочник и назовем его Субконто. Затем на закладке Владельцы укажем, что этот справочник будет подчинен плану видов характеристик ВидыСубконто. Для этого на закладке Владельцы нажмем кнопку Редактировать элемент списка и выберем в качестве владельца справочника план видов характеристик ВидыСубконто (рис. 16.1). Закроем окно редактирования справочника и вернемся к нашему плану видов характеристик. На закладке Основные установим свойство Тип значения характеристик. Нажмем кнопку выбора и зададим составной тип данных следующим образом (рис. 16.2): Бухгалтерия нашего ООО «На все руки мастер» ведет учет движения денежных средств только в разрезе материалов и клиентов, но не исключено, что в дальнейшем понадобится дополнительная аналитика (поэтому мы и используем справочник Субконто). Обратите внимание, что тот справочник, который будет использован в качестве дополнительных значений характеристик, тоже должен входить в составной тип данных типа значений характеристик, иначе конфигуратор выдаст сообщение об ошибке. Затем укажем, что дополнительные значения характеристик будут находиться в справочнике Субконто. После этого перейдем на закладку Прочее и, нажав кнопку Предопределенные, начнем ввод предопределенных значений плана видов характеристик (рис. 16.3). То есть тех видов аналитического учета, в разрезе которых мы будем вести учет. Рис. 16.3. Предопределенные виды характеристик Нажимая кнопку Добавить, создадим предопределенный вид субконто Материалы с кодом 000000001 и типом СправочникСсылка.Номенклатура. Затем создадим вид субконто Клиенты с кодом 000000002 и типом СправочникСсылка.Клиенты. На этом создание видов субконто завершено, и мы можем перейти к знакомству со следующим объектом конфигурации, который будет использован нами, – План счетов. Что такое «План счетов» Объект конфигурации План счетов предназначен для описания структуры хранения информации о совокупности синтетических счетов предприятия, которые созданы для группировки данных о его хозяйственной деятельности. На основе объекта конфигурации План счетов платформа создает в базе данных таблицы, в которых будет храниться информация о том, какие счета и каким образом будет использовать предприятие. Это может быть система бухгалтерских счетов, установленная государством, план управленческих счетов или произвольный набор счетов, используемых для анализа тех или иных видов деятельности предприятия. План счетов в системе «1С:Предприятие» поддерживает иерархию субсчетов: к каждому счету первого уровня может быть открыто несколько субсчетов, которые, в свою очередь, могут иметь свои субсчета, и так далее. Например, законодательно утвержденный план счетов для ведения бухучета в России имеет следующий вид (рис. 16.4). Рис. 16.4. Российский план счетов По любому счету или субсчету может вестись аналитический учет в разрезе субконто, описанных в плане видов характеристик. Связь между планом счетов и планом видов характеристик задается разработчиком на этапе конфигурирования. Для описания используемых субконто система создает в плане счетов специальную табличную часть ВидыСубконто, которая не видна в конфигураторе (но доступна средствами встроенного языка). Вопросы: План счетов Регистр бухгалтерии План видов характеристик в бухгалтерском учете Что такое «План счетов» Лекция №22 Разработка структуры конфигурации План: план видов расчета и регистр расчета Зависимость по базовому периоду Вытеснение по периоду действия план видов расчета Зачем нужен план видов расчета и регистр расчета? На этом занятии мы рассмотрим, какие возможности для автоматизации сложных периодических расчетов предоставляет система «1С:Предприятие». Такие расчеты используются прежде всего при расчете заработной платы. Поэтому дальнейшее их рассмотрение мы будем строить на примере расчета заработной платы сотрудников, которые работают в нашем ООО «На все руки мастер». В общем случае сумма заработной платы сотрудника складывается из множества частей (например, оплата по окладу, премии, штрафы, оплаты по больничному листу, разовые выплаты и т. д.). Каждая из этих частей рассчитывается по некоторому алгоритму, присущему только этой части. Например, сумма штрафа может определяться просто фиксированной суммой, сумма премии может рассчитываться как процент от оклада, а сумма оплаты по окладу рассчитывается исходя из количества рабочих дней в месяце и количества дней, отработанных сотрудником. Поэтому для обозначения каждой такой части мы будем использовать термин вид расчета. Алгоритм каждого вида расчета опирается в общем случае на две категории параметров: период, за который нужно получить конечные данные, и набор некоторых исходных данных, используемых при расчете. Как правило, в реальной жизни различные виды расчета существуют не сами по себе, а оказывают некоторое влияние на другие виды расчета. Исходя из того, что вид расчета опирается на две различные категории параметров, такое влияние тоже имеет двойственный характер. Зависимость по базовому периоду Это может быть влияние на исходные данные, используемые при расчете. В качестве примера можно привести начисление премии в виде процента от оплаты по окладу. При изменении оплаты по окладу размер премии тоже должен быть пересчитан, исходя из новой суммы начисленного оклада. Другими словами, сумма начисленного оклада является базой для расчета премии. Причем поскольку оклад рассчитывается за некоторый период, при расчете премии нам интересно знать не значение оклада вообще, а сумму, начисленную в том периоде, который влияет на расчет премии. Такой период мы будем называть базовым, а подобную зависимость между видами расчета – зависимостью по базовому периоду. В качестве примера рассмотрим начисление премии за апрель. Премия должна начисляться в размере 10 % от суммы, начисленной в качестве оплаты по окладу. Следовательно, необходимо проанализировать все записи о начислениях оплаты по окладу, которые попадают в интересующий нас базовый период, а именно апрель. Допустим, общая сумма таких начислений составила 8 000 рублей – в этом случае премия должна быть начислена в размере 800 рублей (рис. 17.1). Рис. 17.1. Зависимость премии от оклада по базовому периоду Вытеснение по периоду действия Это влияние может быть не на исходные данные, а на сам период, за который производится расчет. В качестве примера можно привести расчет оплаты по окладу и невыход на работу. Предположим, мы начислили сотруднику оплату по окладу за март. В этом случае период действия такого расчета будет с 01.03.2013 по 31.03.2013. После этого мы получили информацию от руководителя отдела, что, оказывается, сотрудник отсутствовал на работе с 1 по 10 марта по неизвестной причине. В этом случае нам нужно будет произвести расчет Невыход (в котором можно рассчитать какие-то удержания с сотрудника). Но кроме этого необходимо будет пересчитать и оклад сотрудника, исходя из того, что фактический период действия расчета Оклад стал теперь с 11.03.2013 по 31.03.2013. Такое влияние мы будем называть вытеснением по периоду действия. В результате если за полный месяц работы сотруднику должно было быть начислено 9 300 рублей, то теперь, за фактический период работы, начисление составит 6 300 рублей (рис. 17.2). Рис. 17.2. Запись расчета «Невыход» вытесняет запись расчета «Оклад» по периоду действия Таким образом, исходя из двух видов взаимного влияния расчетов, можно сказать, что в общем случае с каждым видом расчета будет связано три периода: период действия, фактический период и базовый период. Период действия является «запрашиваемым». То есть, указывая период действия, мы говорим: «Мы хотели бы, чтобы результат действовал в этом периоде». Фактический период – это то, что получилось из периода действия после анализа всех периодов действия расчетов, которые вытесняют наш по периоду действия. Базовый период – это период, в котором мы анализируем результаты других расчетов, влияющих на наш по базовому периоду. Как видите, взаимное влияние между видами расчетов может быть довольно разнообразным и, что самое сложное, многоуровневым. То есть один вид расчета может влиять на другой, который, в свою очередь, влияет на третий и т. д. Очевидно, что в этой ситуации требуется некий универсальный механизм, позволяющий описать каждый из видов расчетов (его алгоритм, влияние на другие виды расчетов, зависимость от других видов расчетов), обеспечить хранение данных, полученных в результате этих расчетов, и контроль необходимости перерасчета результатов зависимых расчетов в случае изменения результатов первичных расчетов. В системе «1С:Предприятие» такой универсальный механизм реализован при помощи планов видов расчета и регистров расчета. И первым объектом конфигурации, с которым мы начнем знакомиться на этом занятии, будет План видов расчета. Что такое план видов расчета Объект конфигурации План видов расчета предназначен для описания структуры хранения информации о возможных видах расчетов. На основе объекта конфигурации План видов расчета платформа создает в базе данных таблицу, в которой будет храниться информация о том, какие существуют виды расчета и каковы взаимосвязи между ними. Отличительной особенностью плана видов расчета является то, что пользователь в процессе работы может добавлять новые виды расчета. Такая возможность делает механизм периодических расчетов более гибким и позволяет пользователю создавать собственные виды расчета, помимо тех, которые заданы разработчиком как предопределенные. Объект конфигурации План видов расчета имеет свойство Использует период действия. С его помощью определяется, будут ли в этом плане находиться виды расчета, которые могут быть вытеснены по периоду действия. Если это свойство установлено, то разработчик получает возможность указать для каждого вида расчета те виды, которые вытесняют его по периоду действия. Следующим важным свойством объекта конфигурации План видов расчета является Зависимость от базы. Оно определяет, будут ли в этом плане находиться зависимые по базовому периоду виды расчета. Если это свойство установлено, появляется возможность указать, в каком плане видов расчета будут находиться базовые виды расчета и, кроме этого, как будет определяться эта зависимость. Существует возможность указать один из двух видов зависимости от базы: Зависимость по периоду действия и Зависимость по периоду регистрации. Еще одной важной особенностью плана видов расчета является возможность создания предопределенных видов расчета и описания их взаимного влияния. При этом в общем случае разработчик имеет возможность указать три категории видов расчета, влияющих на предопределенный вид расчета: Базовые – их результаты должны быть использованы при перерасчете этого вида расчета; Вытесняющие – вытесняют этот вид расчета по периоду действия; Ведущие – изменение их результатов должно приводить к необходимости перерасчета этого вида расчета. Вопросы: план видов расчета и регистр расчета Зависимость по базовому периоду Вытеснение по периоду действия план видов расчета Лекция №23 Приемы работы с конфигуратором План: Диаграмма Ганта Добавление документа о начислениях Общие сведения о механизме полнотекстового поиска в данных Теперь у нас все готово для того, чтобы начать разработку системы расчета заработной платы ООО «На все руки мастер». В этой главе мы создадим документ, с помощью которого будут выполняться различные виды начислений; посмотрим, как и когда платформа формирует записи перерасчета; увидим, как работают механизмы вытеснения по периоду действия и зависимости по базовому периоду. Кроме этого, мы создадим отчет, показывающий начисления сотрудникам ООО «На все руки мастер», и сделаем так, чтобы данные расчетов можно было поддерживать в актуальном состоянии. В заключение мы познакомимся с новым элементом формы – Диаграмма Ганта – и с его помощью наглядно проиллюстрируем работу некоторых механизмов расчета. Добавление документа о начислениях Для того чтобы иметь возможность регистрировать в базе данных начисления, производимые сотрудникам ООО «На все руки мастер», нам понадобится специальный документ. Откроем конфигуратор и добавим новый объект конфигурации Документ. Назовем его НачисленияСотрудникам. Зададим представление объекта как Начисление сотрудникам. На закладке Нумерация установим: Тип номера – Число, Длина номера – 5 (рис. 18.1). На закладке Подсистемы укажем, что документ будет отображаться в подсистеме РасчетЗарплаты. На закладке Данные укажем, что этот документ будет иметь табличную часть Начисления, содержащую следующие реквизиты: Сотрудник, тип СправочникСсылка.Сотрудники; ГрафикРаботы, тип СправочникСсылка.ВидыГрафиковРаботы; ДатаНачала, тип Дата; ДатаОкончания, тип Дата; ВидРасчета, тип ПланВидовРасчетаСсылка.ОсновныеНачисления; Начислено, Число, длина 15, точность 2. Рис. 18.1. Нумерация документа Реквизиты ДатаНачала и ДатаОкончания понадобятся нам для того, чтобы задавать период, в котором должна действовать запись расчета. На закладке Движения запретим оперативное проведение документа. Отметим, что документ будет создавать движения по регистру расчета Начисления, и запустим конструктор движений (рис. 18.2). Рис. 18.2. Движения документа В окне конструктора выберем табличную часть Начисления и нажмем Заполнить выражения. Для реквизитов ПериодДействияКонец и БазовыйПериодКонец укажем выражение КонецДня(ТекСтрокаНачисления.ДатаОкончания). Для поля ПериодРегистрации укажем выражение Дата. Реквизиту ИсходныеДанные поставим в соответствие реквизит табличной части Начислено, а для ресурса Результат оставим пустое выражение, так как мы будем его потом рассчитывать (рис. 18.3). Информационная база нашей фирмы ООО «На все руки мастер» пока еще очень мала. В самом деле в процессе создания и проверки работы конфигурации мы добавили в нее всего лишь несколько элементов номенклатуры, провели небольшое количество документов. Однако реальные информационные базы содержат гораздо больше разнообразной информации, и иногда поиск нужных данных становится достаточно сложной задачей, особенно для пользователя, плохо знакомого с номенклатурой товаров (услуг) или с перечнем контрагентов, с которыми работает фирма. Специально для того, чтобы облегчить поиск незнакомой информации в базе данных, система «1С:Предприятие» содержит механизм полнотекстового поиска в данных. Преимущества этого механизма заключаются в том, что он позволяет искать данные, вводя поисковый запрос в простой и естественной форме, например: «телефон абдулова». При этом можно использовать специальные операторы, наподобие тех, что применяются при поиске в Интернете (И, ИЛИ, НЕ и т. д.). Полнотекстовый поиск чрезвычайно удобен в тех случаях, когда мы не знаем точно, где находятся нужные нам данные (например, в каком справочнике). Также полнотекстовый поиск оказывается незаменим тогда, когда мы не знаем точно, что нужно искать (например, не помним точное название номенклатуры или контрагента). Кроме этих возможностей полнотекстовый поиск позволяет находить данные там, где другие методы поиска крайне трудоемки или требуют создания специальных алгоритмов и обработок. Например, полнотекстовый поиск хорошо умеет работать с текстовыми полями большой длины и полями типа ХранилищеЗначения. На этом занятии мы познакомимся с общими сведениями о механизме полнотекстового поиска в данных, создадим полнотекстовый индекс и на его основе попробуем найти нужные данные в базе данных нашего ООО «На все руки мастер». Общие сведения о механизме полнотекстового поиска в данных Механизм полнотекстового поиска «1С:Предприятия» основан на использовании двух составляющих: полнотекстового индекса, средств выполнения полнотекстового поиска. Для того чтобы была возможность выполнять полнотекстовый поиск, обязательно должен существовать полнотекстовый индекс. Полнотекстовый индекс создается один раз и затем должен периодически обновляться. Поиск осуществляется по тем данным, которые содержатся в полнотекстовом индексе. Таким образом, если ведется интенсивная работа с базой данных (например, данные изменяются, добавляются новые), то полнотекстовый индекс следует обновлять как можно чаще. Если же объем изменяемых или новых данных невелик, то обновление полнотекстового индекса можно выполнять реже, например раз в сутки, в период наименьшей загруженности системы. Создание и обновление полнотекстового индекса может выполняться как интерактивно, в режиме 1С:Предприятие, так и программно, средствами встроенного языка. На этом занятии мы рассмотрим возможности интерактивного индексирования, а на следующем занятии вы узнаете, как можно обновлять полнотекстовый индекс в автоматическом режиме. В процессе работы информационной базы система отслеживает факт изменения данных в тех объектах конфигурации, которые могут участвовать в полнотекстовом поиске. Такими объектами являются, например, планы обмена, справочники, документы, планы видов характеристик, планы счетов, планы видов расчета, регистры (сведений, накопления, бухгалтерии, расчета), бизнес-процессы и задачи. Впоследствии при создании или обновлении полнотекстового индекса система анализирует данные, содержащиеся в реквизитах этих объектов, и включает эти данные в полнотекстовый индекс. При этом анализироваться могут не все реквизиты, а только те, которые имеют тип Строка, Число, Дата, ХранилищеЗначения или ссылочный тип (например, СправочникСсылка.Номенклатура). Собственно сам полнотекстовый поиск выполняется средствами встроенного языка. Немного забегая вперед, необходимо отметить, что полнотекстовый поиск выполняется в соответствии с правами пользователя. Таким образом, если какая-то информация недоступна данному пользователю, он не сможет получить ее и при помощи полнотекстового поиска. Результаты полнотекстового поиска возвращаются порциями, и, кроме этого, они отсортированы в определенном порядке. Это сделано для того, чтобы с большой долей вероятности пользователь получал требуемые ему данные в начале первой порции. Как показывает практика, при правильно составленном поисковом запросе требуемые данные возвращаются в первой тройке-пятерке результатов. Теперь, когда мы в общем виде представляем себе, как работает полнотекстовый поиск, приступим к первой части необходимых действий – созданию полнотекстового индекса. Далее с помощью стандартного механизма платформы мы будем собственно выполнять полнотекстовый поиск, используя созданный нами индекс. Вопросы: Диаграмма Ганта Добавление документа о начислениях Общие сведения о механизме полнотекстового поиска в данных |