Радченко Максим Григорьевич

OOO «1С-Паблишинг» 2004

Москва

Примеры и типовые приемы

Практическое пособие разработчика

С:Предприятие 8.0


УДК 658.012.011.56:004.42 ББК 65.29 P15

P15 1С:Предприятие 8.0. Практическое пособие разработчика. Примеры и типовые приемы, M.:, OOO «1С-Паблишинг», 2004. - 656 с: ил. ISBN 5-9521-0091-0

Книга представляет собой пособие, позволяющее быстро освоить приемы разработки и модификации прикладных решений на платформе 1С:Предприятия 8.0.

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

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

Книга может быть использована и как практическое руководство, и как справочное пособие. Заключительные главы содержат указатель приемов разработки, упомянутых в книге, со ссылками на соответствующие разделы. Кроме этого, книга содержит перечень вопросов, которые возникают при изучении системы 1С:Предприятие 8.0 у разработчиков, имеющих опыт работы с версией 7.7, и ответы на них, ссылающиеся на материал книги.

Рассматриваемое в книге прикладное решение учитывает накопленный опыт разработки в системе 1С:Предприятие 8.0 и демонстрирует многие новые возможности и механизмы, предоставляемые версией 8.0.7.

Право тиражирования и распространения книги принадлежит фирме "1С-Паблишинг".

%01546"021298 ISBN5-9521-0091-0

Полное или частичное копирование материалов книги без письменного разрешения фирмы "1С-Паблишинг" запрещается.

© OOO " 1С-Паблишинг", 2004


ОГЛАВЛЕНИЕ

Введение.................................................................................. 8

Как читать книгу.................................................................... 10

Часть I. Быстрая разработка прикладных решений....12

Глава 1. Первое знакомство................................................................................ 13

Что я делаю?...................................................................................................... 14

Система 1С:Предприятие................................................................................. 15

Первое знакомство........................................................................................... 20

Дерево конфигурации....................................................................................... 21

Объекты конфигурации.................................................................................... 22

Как работать с деревом конфигурации и как создать объект........................ 25

Чтонового мыузнали........................................................................................ 27

Глава2. Справочник.............................................................................................. 28

Объектконфигурации Справочник.................................................................. 29

Создание справочникаКлиенты....................................................................... 33

Создание справочникаСотрудники.................................................................. 40

Создание справочникаНоменклатура.............................................................. 45

Создание справочника Склады........................................................................ 49

Основная конфигурация и конфигурация базы данных................................ 52

Палитра свойств................................................................................................ 56

Что нового мы узнали...................................................................................... 58

ГлаваЗ. Документ................................................................................................. 60

ОбъектконфигурацииДокумент....................................................................... 61

Оперативное и неоперативное проведение...................................................... 64

Типообразующиеобъекты................................................................................ 66

СозданиедокументаПриходнаяНакладная...................................................... 67

Создание документа ОказаниеУслуги............................................................. 79

Что нового мыузнали....................................................................................... 81

Глава 4. Регистр накопления................................................................................ 82

Зачем нужен регистр накопления?................................................................... 83

Объект конфигурации Регистр накопления.................................................... 85

Создание регистра накопления ОстаткиМатериалов...................................... 87

Создание движенийдокумента ПриходнаяНакладная................................... 89

Создание движений документа ОказаниеУслуги........................................... 94

Что нового мы узнали...................................................................................... 95

Глава5. Отчет........................................................................................................ 96

Объект конфигурации Отчет............................................................................ 97

Создание отчета Материалы............................................................................. 98

Что нового мы узнали.................................................................................... 102


Отчет Универсальный2........................ Использование построителя отчета в конструкторе выходной формы....................................................................................................... 225 Что нового мы узнали.................................................................................... 230 Глава 6. Оптимизация процедуры проведения документа ОказаниеУслуги........................................................................................... 232 Особенности использования ссылочных данных......................................... 233 Оптимизация документа ОказаниеУслуги................................................... 238 Что нового мы узнали.................................................................................... 251 Глава 7. План видов характеристик.................................................................. 252 Постановказадачи........................................................................................... 253 Объект конфигурации План видов характеристик....................................... 254 TX^T~VHJt*f*Vnn r>nrr

,__________ UI^UU ^upanlb^nL;inK ......................................................... ,....... 254 Логическая связь объектов............................................................................ 257 Реализациярешения........................................................................................ 259 Что нового мыузнали..................................................................................... 289

Главаб. Макет..................................................................................................... 103

Объект конфигурации Макет........................................................................ 104

Создание макета документа ОказаниеУслуги............................................. 105

Что нового мы узнали.................................................................................... 109

Глава7. Редактирование макетов и форм........................................................ 110

Редактирование макетадокументаОказаниеУслуги..................................... 110

Редактирование формы документа ОказаниеУслуги.................................. 114

Что нового мы узнали.................................................................................... 116

Часть II. Использование основных объектов

конфигурации................................................................ 117

Глава 1. Периодический регистр сведений....................................................... 118

Зачем нужен периодический регистр сведений?.......................................... 119

Объект конфигурации регистр сведений...................................................... 120

Создание периодического регистра сведений Цены.................................... 122

Создание функцииРозничнаяЦена()............................................................. 124

Автоматическое заполнение цены в документе

ОказаниеУслуги....................................................................................... 126

Что нового мы узнали.................................................................................... 129

Глава2. Перечисление........................................................................................ 130

Объект конфигурации Перечисление............................................................ 131

Реорганизация справочника Номенклатура................................................. 132

Изменение процедуры проведения документа ОказаниеУслуги............... 134

Что нового мы узнали.................................................................................... 137

Глава 3. Проведение документа по нескольким регистрам........................... 138

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

регистрам?................................................................................................ 139

Создание регистра СтоимостьМатериалов.................................................. 140

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

ПриходнаяНакладная.............................................................................. 141

Изменение процедуры проведения документа ОказаниеУслуги............... 145

Что нового мы узнали.................................................................................... 151

Глава 4. Оборотный регистр накопления......................................................... 152

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

Создание оборотного регистра накопления Продажи................................. 154

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

ОказаниеУслуги....................................................................................... 157

Что нового мы узнали................................................................................... 161

Глава 5. Создание отчетов................................................................................. 162

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

Отчет РеестрДокументовОказаниеУслуги.................................................. 166

Отчет Рейтинг услуг...................................................................................... 173

ОтчетВыручкаМастеров................................................................................ 183

ОтчетПереченьУслуг..................................................................................... 191

ОтчетРейтингКлиентов.................................................................................. 196

Универсальныйотчет...................................................................................... 208


Глава 8. Бухгалтерскийучет............................................................................... 290

Объект конфигурации План видов характеристик....................................... 291

Объектконфигурации План счетов................................................................ 295

Объект конфигурации Регистр бухгалтерии................................................. 301

Использованиерегистрабухгалтерии............................................................. 303

Что нового мы узнали.................................................................................... 316

Глава 9. План видов расчета, регистр расчета.................................................. 317

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

Объект конфигурации План видов расчета.................................................. 322

Создание плана видов расчета ОсновныеНачисления.................................. 325

Объект конфигурации Регистр расчета......................................................... 327

Создание регистра расчета Начисления........................................................ 335

Что нового мы узнали.................................................................................... 339

Глава 10. Использование регистра расчета...................................................... 340

Создание документа НачисленияСотрудникам............................................ 341

Иллюстрация механизмов вытеснения и зависимости от базы.................. 345

Создание процедуры расчета записей регистра Начисления....................... 349

Создание отчета НачисленияСотрудникам................................................... 357

Выполнение перерасчетазаписей регистрарасчета........................................ 359

Графическое представление начислений....................................................... 364

Что нового мыузнали..................................................................................... 371

Глава 11. Подсистема......................................................................................... 372

Зачем нужны подсистемы?............................................................................. 373

Создание подсистем........................................................................................ 374

Что нового мыузнали..................................................................................... 377 Глава 12. Интерфейс, роль, список пользователей.......................................... 378 Объект конфигурации Роль........................................................................... 379 Объектконфигурации Интерфейс.................................................................. 384 Администрированиеработыпользователей................................................... 389 Что нового мы узнали.................................................
......................... jw Глава 13. Обменданными................................................................................... 393 Общие сведения об обмене данными............................................................ 394 Универсальный механизм обмена данными................................................. 400
........................... 392

ЧтО Hr>Rnrn мч «™™


авление

Механизм распределенных информационных баз....................................... 426

Что нового мы узнали................................................................................... 443

Глава 14. Анализ и прогнозирование данных.................................................. 444

Общие сведения об анализе и прогнозировании данных............................ 445

Анализданных................................................................................................ 451

Модель прогноза............................................................................................ 470

Построитель отчета анализа данных............................................................. 473

Что нового мы узнали................................................................................... 476

Глава 15. Создание документа ввода начальных остатков............................. 477

Глава 16. Легким движением брюки превращаются....................................... 485

Часть III. Специальные приемы разработки............... 486

Глава 1. Общие приемы..................................................................................... 487

Организацияподборов.................................................................................... 488

Ввод на основании......................................................................................... 493

Объекты, введенные на основании............................................................... 497

Глава 2. Формы.................................................................................................. 501

Данные и элементы управления.................................................................... 502

Связанныесписки........................................................................................... 512

Изменение источника данных табличного поля........................................... 516

Изменение данных табличного поля путем установки типа

значения.................................................................................................... 520

Вычисляемые колонки в списках................................................................. 524

Оформление строк табличного поля............................................................ 527

Часть IV. Краткий справочникразработчика................ 529

Стандарты именования переменных, процедур и объектов

конфигурации........................................................................................... 530

Немного о конфигурациях............................................................................ 535

Объекты, объекты, объекты.......................................................................... 537

Справочники идокументы............................................................................. 539

Понятиемоментавремени............................................................................... 540

Концепция оперативного и неоперативного проведения

документов............................................................................................... 541

Механизм основныхформ............................................................................. 542

Окно редактирования объекта конфигурации и палитра

свойств...................................................................................................... 544

Обработчики событий.................................................................................... 546

События, связанные с формой...................................................................... 547

Способы работы с коллекцией...................................................................... 550

Виды объектов встроенного языка, предназначенные для

работы с данными прикладных объектов конфигурации...................... 551

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

Кэш объектов................................................................................................. 554

Виртуальныетаблицы запросов..................................................................... 559

Манипулирование данными объектов.......................................................... 561


Оглавле!

Константы........................................................................................................ 565

Справочники.................................................................................................... 570

Документы....................................................................................................... 577

Перечисления.................................................................................................. 584

Планы видовхарактеристик............................................................................ 586

Планы счетов................................................................................................... 588

Планы видов расчета...................................................................................... 590

Регистры сведений.......................................................................................... 593

Регистры накопления...................................................................................... 599

Регистры бухгалтерии..................................................................................... 603

Регистрырасчета.............................................................................................. 606

Планыобмена................................................................................................... 609

Часть V. Приложения........................................................ 611

Глава 1. Вопросы при переходе с версии 7.7.................................................... 612

Версия 7.7 - версия 8.0................................................................................... 612

Общие вопросы............................................................................................ 612

Права............................................................................................................. 615

Системные константы, процедуры и функции........................................... 616

Глобальный модуль.................................................................................... 618

Контекст формы........................................................................................... 619

Справочник.................................................................................................. 623

Перечисление............................................................................................... 626

Документ...................................................................................................... 627

Списокзначений............................................................................................ 633

Таблица (табличныйдокумент)................................................................... 633

Запрос........................................................................................................... 634

Версия8.0......................................................................................................... 635

Общие вопросы.................................... :...................................................... 635

Интерфейсные объекты............................................................................... 640

Прикладныеобъекты.................................................................................... 645

Глава 2. Приемы разработки, перечисленные в книге..................................... 648

Встроенный язык............................................................................................ 648

Глобальный контекст...................................................................................... 648

Общие объекты............................................................................................... 648

Универсальные коллекции значений............................................................. 649

Интерфейсные объекты.................................................................................. 649

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

Прикладные объекты...................................................................................... 655


Введение

На кого рассчитана эта книга

Нужна ли мне эта книга?Такой вопрос возникает у каждого человека, который в первый раз переворачивает титульный лист в надежде найти простой ответ.

Возможно, вы никогда ранее не работали с программами 1С:Предприятие и вам интересно узнать, что это такое? Может быть, вы слышали, что есть такая система и хотите понять, какие возможности она имеет? Насколько она сложна в освоении и использовании? Какой уровень подготовки требуется, чтобы можно было самостоятельно создать программу, способную решать реальные жизненные задачи?

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

Может быть, вы уже знакомы с программами 1С:Предприятие? Возможно, у вас есть опыт разработки приложений в предыдущей версии 1С:Предприятие 7.7 и вы хотите узнать, какие возможности может предоставить версия 8.0?

Тогда эта книга тоже для вас. По мере изложения материала мы будем делать специальные замечания для тех, кто ранее работал с версией 7.7. Эти замечания вряд ли будут полезны тем, кто совсем не знаком с платформой 1С:Предприятие, но для тех, кто собрался или собирается переходить на версию 8.0, они дадут много полезной информации. Очевидно, что новая версия содержит в себе больше возможностей, но очень сложно понять и отделить главное от


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

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

- для объяснения механизмов использования и демонстрации
конкретных примеров.

На каком примере построена книга

В качестве примера, на котором мы расскажем о методах разработки в 1С:Предприятии 8.0, мы решили взять небольшую фирму

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

Почему был выбран именно такой пример?

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

С другой стороны, деятельность ремонтной фирмы хорошо
подходит для демонстрации возможностей 1С:Предприятия 8.0. Здесь
есть разнообразные услуги, оказываемые клиентам, снабжение фирмы
необходимыми материалами и их расход при оказании услуг. Работа
такого предприятия позволяет рассмотреть учет персонала и расчет
заработной платы сотрудников. Есть возможность

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