Главная страница
Навигация по странице:

  • Зачем нужно проведение документа по нескольким регистрам

  • Добавление еще одного регистра накопления

  • Проведение приходной накладной по двум регистрам

  • Лекция №12 Начисление зарплаты и отчислений

  • Зачем нужно создавать еще один регистр

  • Что такое оборотный регистр накопления

  • Добавление оборотного регистра накопления

  • Лекция №13 Документы на выпуск готовой продукции

  • Способы доступа к данным

  • Работа с запросами

  • Источники данных запросов

  • 1с программирование. Лекция 1 Вводное занятие. Инструктаж План разработка прикладных решений Общие сведения о системе


    Скачать 2.39 Mb.
    НазваниеЛекция 1 Вводное занятие. Инструктаж План разработка прикладных решений Общие сведения о системе
    Дата26.01.2022
    Размер2.39 Mb.
    Формат файлаdocx
    Имя файла1с программирование.docx
    ТипЛекция
    #342546
    страница4 из 8
    1   2   3   4   5   6   7   8

    Лекция №11 Документы на отпуск материалов

    План:

    1. Зачем нужно проведение документа по нескольким регистрам

    2. Добавление еще одного регистра накопления

    3. Проведение приходной накладной по двум регистрам

    Зачем нужно проведение документа по нескольким регистрам

    До сих пор мы с вами учитывали только количественное движение материалов в ООО «На все руки мастер». Для этих целей мы создали регистр накопления ОстаткиМатериалов.

    Однако как вы, наверное, догадываетесь, одного только количественного учета совершенно недостаточно для нужд нашего предприятия. Очевидно, что необходимо также знать, какие денежные средства были затрачены на приобретение тех или иных материалов и каковы материальные запасы ООО «На все руки мастер» в денежном выражении.

    После того как мы начали автоматизировать наше предприятие, руководство ООО «На все руки мастер» высказало пожелание, чтобы весь суммовой учет материалов велся бы теперь по средней стоимости.

    То есть при закупке материалов они должны учитываться в ценах приобретения, а при расходе – по средней стоимости, которая рассчитывается исходя из общей суммы закупок данного материала и общего количества этого материала, находящегося в ООО «На все руки мастер».

    Поскольку подобная информация имеет совершенно другую структуру, нежели количественный учет, для хранения данных об общей стоимости тех или иных материалов мы будем использовать еще один регистр накопления СтоимостьМатериалов.

    Таким образом, документы ПриходнаяНакладная и ОказаниеУслуги должны будут создавать движения не только в регистре ОстаткиМатериалов, но одновременно и в регистре СтоимостьМатериалов, отражая изменения суммового учета.

    Добавление еще одного регистра накопления

    В режиме «Конфигуратор»

    Регистр СтоимостьМатериалов совсем не сложен, поэтому мы не будем подробно останавливаться на его создании.

    Создадим новый объект конфигурации Регистр накопления с именем СтоимостьМатериалов.

    Расширенное представление списка зададим как Движения по регистру Стоимость материалов. Этот заголовок будет отображаться в окне списка записей регистра.

    На закладке Подсистемы отметим, что этот регистр будет отображаться в подсистемах Бухгалтерия, Учет материалов и Оказание услуг.

    На закладке Данные создадим для регистра одно измерение – Материал типа СправочникСсылка.Номенклатура и один ресурс – Стоимость типа Число длиной 15 и точностью 2.

    После создания регистр СтоимостьМатериалов должен выглядеть в дереве конфигурации следующим образом

    Теперь отредактируем командный интерфейс, чтобы в разделах Бухгалтерия, Оказание услуг и Учет материалов была доступна команда для просмотра нашего регистра накопления.

    В дереве объектов конфигурации выделим ветвь Подсистемы, вызовем ее контекстное меню и выберем пункт Все подсистемы.

    В открывшемся окне слева в списке Подсистемы выделим подсистему Бухгалтерия.

    Справа в списке Командный интерфейс отразятся все команды выбранной подсистемы.

    В группе Панель навигации.Обычное включим видимость у команды

    Стоимость материалов и мышью перетащим ее в группу Панель

    Рис. 11.2. Настройка командного интерфейса подсистем

    Аналогично, выделив подсистемы ОказаниеУслуг и УчетМатериалов, в группе Панель навигации.Обычное включим видимость у команды Стоимость материалов и перенесем ее в группу Панель навигации.См. также.

    Теперь мы можем приступить к внесению изменений в процедуры проведения наших документов.

    Начнем с самого простого – документа Приходная накладная.

    Проведение приходной накладной по двум регистрам

    В режиме «Конфигуратор»

    Изменение процедуры проведения

    Откроем в конфигураторе окно редактирования объекта конфигурации Документ ПриходнаяНакладная и перейдем на закладку Движения.

    В списке регистров отметим, что документ будет создавать теперь движения и по регистру СтоимостьМатериалов (рис. 11.3).

    в регистре «Стоимость материалов»

    Нажмем кнопку Конструктор движений. На вопрос системы о замещении процедуры проведения документа на новую, сформированную конструктором, ответим утвердительно. Мы ничего не потеряем, так как конструктор в обработке проведения сформирует движения уже по двум регистрам, а в прежнюю процедуру проведения мы никаких изменений не вносили.

    В открывшемся окне конструктора движений мы увидим, что для регистра ОстаткиМатериалов все поля конструктора уже содержат информацию, которую мы задавали ранее при формировании движений для этого регистра. Над списком Регистры нажмем кнопку Добавить и добавим еще один регистр СтоимостьМатериалов (рис. 11.4).

    Рис. 11.4. Конструктор движений регистров

    Вопросы:

    1. Зачем нужно проведение документа по нескольким регистрам

    2. Добавление еще одного регистра накопления

    3. Проведение приходной накладной по двум регистрам

    Лекция №12 Начисление зарплаты и отчислений

    План:

    1. Зачем нужно создавать еще один регистр

    2. Что такое оборотный регистр накопления

    3. Добавление оборотного регистра накопления

    Зачем нужно создавать еще один регистр

    Продолжим рассматривать работу нашего документа ОказаниеУслуги.

    До сих пор мы создавали в регистрах накопления движения только для строк документа, которые содержат материалы. Услуги, содержащиеся в документе, мы никак не учитывали.

    Дело в том, что при учете услуг важны совершенно другие критерии, нежели при учете материалов.

    Прежде всего, бессмысленно говорить о том, сколько услуг было и сколько их осталось, важна только сумма и количество услуг, которые были оказаны за определенный промежуток времени.

    Кроме этого, интересны следующие моменты:

    • какие именно услуги были оказаны (чтобы составить рейтинг услуг);

    • какому именно клиенту оказывались услуги (чтобы, например, предоставить ему скидку от объема оплаченных ранее услуг);

    • какой мастер предоставлял услуги (чтобы начислить ему заработную плату).

    Очевидно, что существующие регистры накопления совершенно не подходят для решения таких задач.

    Поэтому мы создадим еще одно хранилище данных, которое будет использоваться в нашей программе, – оборотный регистр накопления Продажи.

    Что такое оборотный регистр накопления

    Когда мы создавали регистры ОстаткиМатериалов и СтоимостьМатериалов, мы специально не останавливались на видах регистров накопления, которые существуют в системе «1С:Предприятие». Сейчас пришло время сказать об этом несколько слов.

    Регистры накопления могут быть регистрами остатков и регистрами оборотов.

    Существующие в нашей учебной конфигурации регистры ОстаткиМатериалов и СтоимостьМатериалов являются регистрами остатков.

    Если вы помните, при создании отчета Материалы в конструкторе запроса мы видели, что для таких регистров система создает три виртуальные таблицы: таблицу остатков, таблицу оборотов и совокупную таблицу остатков и оборотов.

    Оборотный регистр накопления очень похож на знакомый уже нам регистр остатков, но для него понятие «остаток» не имеет смысла. Оборотный регистр накапливает только обороты, остатки ему безразличны. Поэтому единственной виртуальной таблицей, которую будет создавать система для такого регистра, будет таблица оборотов. В остальном оборотный регистр ничем не отличается от регистра остатков.

    Следует сказать об одной особенности конструирования регистров накопления, напрямую связанной с возможностью получения остатков. При создании оборотного регистра накопления нет особой сложности в определении того, какие именно данные должны являться измерениями регистра – мы можем назначить в качестве его измерений любые нужные нам данные.

    Совсем иная ситуация в случае регистра накопления, поддерживающего накопление остатков. Для него выбор измерений должен выполняться исходя из того, что движения регистра могут быть осуществлены в две стороны: приход и расход. Таким образом, в качестве измерений нужно выбирать те данные, по которым движения точно будут осуществляться как в одну, так и в другую сторону.

    Например, если ведется учет материалов в разрезах номенклатуры и склада, очевидно, что и номенклатура, и склад могут быть измерениями, поскольку как приход, так и расход материалов всегда будут осуществляться с указанием конкретной номенклатуры и конкретного склада. Если же в этой ситуации появляется желание отразить учет материалов еще и в разрезе поставщика, то здесь уже нужно исходить из конкретной схемы учета, принятой на предприятии.

    Скорее всего, при поступлении материалов поставщик будет указан, а вот при расходовании материалов с большой долей вероятности поставщик указываться не будет. В большинстве случаев это совершенно лишняя информация.

    Значит, поставщика следует добавить не как измерение, а как реквизит регистра накопления.

    Если же при расходе материалов поставщик будет указываться наверняка, имеет смысл добавить поставщика в измерения регистра.

    Иными словами, по каждому из измерений регистра накопления остатков ресурсы обязательно должны изменяться в обе стороны: приход и расход. Не должно существовать таких измерений, по которым осуществляется только приход или только расход.

    Нарушение этого принципа построения регистров накопления будет вести к непроизводительному использованию ресурсов системы и как следствие к замедлению работы и падению производительности.

    Для реквизитов же регистра этот принцип не важен. По реквизитам регистра ресурсы могут только приходоваться или только расходоваться.

    Добавление оборотного регистра накопления

    В режиме «Конфигуратор»

    Теперь, когда мы знаем практически все о регистрах накопления, откроем конфигуратор и создадим новый объект конфигурации Регистр накопления.

    Назовем его Продажи и определим вид регистра – Обороты.

    Кроме этого, зададим Расширенное представление списка как Движения по регистру Продажи. Этот заголовок будет отображаться в окне списка записей регистра (рис. 12.1).

    На закладке Подсистемы отметим, что этот регистр будет отображаться в подсистемах Бухгалтерия, Учет материалов и Оказание услуг.

    На закладке Данные создадим измерения регистра:

    • Номенклатура, тип СправочникСсылка.Номенклатура;

    • Клиент, тип СправочникСсылка.Клиенты;

    • Мастер, тип СправочникСсылка.Сотрудники.

    Рис. 12.1. Создание оборотного регистра накопления

    У регистра будет три ресурса:

    • Количество, тип Число, длина 15, точность 3;

    • Выручка, тип Число, длина 15, точность 2;

    • Стоимость, тип Число, длина 15, точность 2.

    После создания регистр Продажи должен выглядеть в дереве конфи-

    гурации следующим образом

    (рис. 12.2).

    Рис. 12.2. Оборотный регистр накопления «Продажи»

    Теперь отредактируем командный интерфейс, чтобы в подсистемах Бухгалтерия, Оказание услуг и Учет материалов была доступна команда для просмотра нашего оборотного регистра накопления.

    В дереве объектов конфигурации выделим ветвь Подсистемы, вызовем ее контекстное меню и выберем пункт Все подсистемы.

    В открывшемся окне слева в списке Подсистемы выделим подсистему Бухгалтерия.

    Справа в списке Командный интерфейс отразятся все команды выбранной подсистемы.

    В группе Панель навигации.Обычное включим видимость у команды Продажи и мышью перетащим ее в группу Панель навигации.См. также.

    Аналогично, выделив подсистемы ОказаниеУслуг и УчетМатериалов, в группе Панель навигации.Обычное включим видимость у команды Продажи и перенесем ее в группу Панель навигации.См. также.

    Вопросы:

    1. Зачем нужно создавать еще один регистр

    2. Что такое оборотный регистр накопления

    3. Добавление оборотного регистра накопления

    Лекция №13 Документы на выпуск готовой продукции

    План:

    1. система компоновки данных

    2. Способы доступа к данным

    3. Работа с запросами

    4. Язык запросов

    Настало время, чтобы познакомиться с одним важным инструментом платформы «1С:Предприятие» – системой компоновки данных. На этом занятии мы рассмотрим построение нескольких отчетов, которые будут использоваться в нашей конфигурации, и на их примере объясним основные возможности системы компоновки данных.

    Любой отчет, как правило, подразумевает получение сложной выборки данных, сгруппированных и отсортированных определенным образом. Система компоновки данных представляет собой мощный и гибкий механизм, позволяющий выполнить все необходимые действия – от получения данных из различных источников до представления этих данных в виде, удобном для пользователя.

    Чаще всего исходные данные, необходимые для отчета, находятся в базе данных. Для того чтобы указать системе компоновки данных, какая информация и откуда должна быть получена, используется язык запросов системы «1С:Предприятие».

    На этапе разработки отчета можно задать стандартные настройки отчета для того, чтобы пользователь мог сразу же запустить отчет на выполнение. В то же время пользователь может самостоятельно изменить настройки отчета и выполнить его. При этом система компоновки данных сгенерирует другой запрос и другим образом представит конечные данные – в соответствии с новыми настройками, заданными пользователем.

    В начале этого занятия мы познакомимся с общими сведениями о языке запросов системы «1С:Предприятие» и о системе компоновки данных.

    Затем на примерах создания конкретных отчетов мы научимся использовать систему компоновки данных для решения различных практических задач.

    Способы доступа к данным

    Система «1С:Предприятие» поддерживает два способа доступа к данным, хранящимся в базе данных:

     объектный (для чтения и записи);  табличный (для чтения).

    Объектный способ доступа к данным реализован посредством использования объектов встроенного языка.

    С некоторыми из этих объектов мы уже познакомились на предыдущих занятиях.

    Важной особенностью объектного способа доступа к данным является то, что, обращаясь к какому-либо объекту встроенного языка, мы обращаемся к некоторой совокупности данных, находящихся в базе данных, как к единому целому.

    Например, объект ДокументОбъект.ОказаниеУслуги будет содержать значения всех реквизитов документа Оказание услуги и всех его табличных частей.

    Объектная техника обеспечивает сохранение целостности объектов, кеширование объектов, вызов соответствующих обработчиков событий и т. д.

    Табличный доступ к данным в «1С:Предприятии» реализован с помощью запросов к базе данных, которые составляются на языке запросов.

    В этой технике разработчик получает возможность оперировать отдельными полями таблиц базы данных, в которых хранятся те или иные данные.

    Табличная техника предназначена для получения информации из базы данных по некоторым условиям (отбор, группировка, сортировка, объединение нескольких выборок, расчет итогов и т. д.). Табличная техника оптимизирована для обработки больших объемов информации, расположенной в базе данных, и получения данных, отвечающих заданным критериям.

    Работа с запросами

    Для работы с запросами используется объект встроенного языка Запрос. Он позволяет получать информацию, хранящуюся в полях базы данных, в виде выборки, сформированной по заданным правилам. Источники данных запросов

    Исходную информацию запрос получает из набора таблиц. Эти таблицы представляют разработчику данные реальных таблиц базы данных в удобном для анализа виде.

    Все таблицы, которыми оперирует язык запросов, можно разделить на две большие группы: реальные таблицы и виртуальные таблицы

    (рис. 13.1).



    Рис. 13.1. Таблицы запросов

    Посмотреть состав таблиц, доступных для запроса, и их описание можно в синтакс-помощнике в разделе Работа с запросами  Таблицы запросов.

    Отличительной особенностью реальных таблиц является то, что они содержат данные какой-либо одной реальной таблицы, хранящейся в базе данных.

    Например, реальной является таблица Справочник.Клиенты, соответствующая справочнику Клиенты, или таблица РегистрНакопления.ОстаткиМатериалов, соответствующая регистру накопления ОстаткиМатериалов.

    Виртуальные таблицы формируются в основном из данных нескольких таблиц базы данных.

    Например, виртуальной является таблица РегистрНакопления.ОстаткиМатериалов.ОстаткиИОбороты, формируемая из нескольких таблиц регистра накопления Остатки Материалов.

    Иногда виртуальные таблицы могут формироваться и из одной реальной таблицы (например, виртуальная таблица Цены.СрезПоследних формируется на основе таблицы регистра сведений Цены).

    Однако общим для всех виртуальных таблиц является то, что им можно задать ряд параметров, определяющих, какие данные будут включены в эти виртуальные таблицы. Набор таких параметров может быть различным для разных виртуальных таблиц и определяется данными, хранящимися в исходных таблицах базы данных.

    Реальные таблицы подразделяются на объектные (ссылочные) и необъектные (нессылочные).

    В объектных (ссылочных) таблицах представлена информация ссылочных типов данных (справочники, документы, планы видов характеристик и т. д.). А в необъектных (нессылочных) – всех остальных типов данных (константы, регистры и т. д.).

    Отличительной особенностью объектных (ссылочных) таблиц является то, что они включают в себя поле Ссылка, содержащее ссылку на текущую запись. Кроме этого, для таких таблиц возможно получение пользовательского представления объекта. Эти таблицы могут быть иерархическими, и поля таких таблиц могут содержать вложенные таблицы (табличные части).

    Язык запросов

    Алгоритм, по которому данные будут выбраны из исходных таблиц запроса, описывается на специальном языке – языке запросов.

    Текст запроса может состоять из нескольких частей:

    • описание запроса,

    • объединение запросов,

    • упорядочивание результатов,

    • автоупорядочивание,  описание итогов.

    Обязательной частью запроса является только первая – описание запроса. Все остальные присутствуют по необходимости.

    Описание запроса определяет источники данных, поля выборки, группировки и т. д.

    Объединение запросов определяет, как будут объединены результаты выполнения нескольких запросов.

    Упорядочивание результатов определяет условия упорядочивания строк результата запроса.

    Автоупорядочивание позволяет включить режим автоматического упорядочивания строк результата запроса.

    Описание итогов определяет, какие итоги необходимо рассчитывать в запросе и каким образом группировать результат.

    Следует заметить, что в случае, когда язык запросов используется для описания источников данных в системе компоновки данных, секция описания итогов языка запросов не используется. Это связано с тем, что система компоновки данных самостоятельно рассчитывает итоги на основании тех настроек, которые сделаны разработчиком или пользователем.

    Применение различных синтаксических конструкций языка запросов подробно описано во встроенной справке в режиме Конфигуратор: Справка  Содержание справки  1С:Предприятие  Встроенный язык  Работа с запросами, а также в документации «1С:Предприятие 8.3. Руководство разработчика», глава 8 «Работа с запросами».

    Детальнее с языком запросов мы познакомимся далее, в процессе создания конкретных отчетов.

    Мы не будем писать запросы руками. Для большинства отчетов, разрабатываемых с помощью системы компоновки данных, запрос можно создать при помощи конструктора запросов.

    Поэтому наша задача на этом занятии – научиться читать и понимать тексты этих запросов, чтобы в дальнейшем иметь возможность изменять их.

    Вопросы:

    1. система компоновки данных

    2. Способы доступа к данным

    3. Работа с запросами

    4. Язык запросов
    1   2   3   4   5   6   7   8


    написать администратору сайта