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

Рассмотрим не самую новую, но все еще широко распространенную версию 1С – 8.2. «1С Предприятие 8.2» – это система программ, которая состоит из платформы и разработанных на ней прикладных решений или конфигураций.

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

Области применения

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

  • Эффективная организация любых видов учета, и в первую очередь – бухгалтерского и налогового;
  • Составление регламентированной отчетности, а также широкого круга отчетов «по запросу» в любых разрезах, взаимодействие с контролирующими органами;
  • Автоматизация в части финансового планирования, анализа и бюджетирования;
  • Решение задач оценки, контроля эффективности и учета выполняемых работ.

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

Платформа «1С: Предприятие 8.2»

Последняя платформа 1С 8.2 создана на основе опыта применения предыдущих версий систем – 1С: Предприятие 8 и ранее 1С: Предприятие 7.7. если от семерки платформа 1С 8.2 отличается в корне, то с первой версией «восьмерки» она во многом перекликается.

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


В системе 1С Предприятие 8.2 появились клиентские приложения: веб-клиент и тонкий клиент, которые позволяют работать в новом режиме управляемого приложения. Кроме зарекомендовавшего себя ранее файлового (толстый клиент) доступа и работы с сервером через локальную сеть, работа в новых режимах предусматривает подключение к информационной базе по протоколу HTTP посредством настроенного веб-сервера.

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

Благодаря этому, тонкий клиент использует меньше аппаратных мощностей и его объем дистрибутива намного меньше, чем у более ранних клиентских приложений. Работа тонкого клиента происходит в режиме 1С Предприятие. Тонкий клиент поставляется отдельно, но он также входит в состав полного дистрибутива платформы.

Веб-клиент не имеет исполняемого файла. Запуск этого приложения выполняется не в среде операционной системы, а в среде браузера. Поэтому для работы в режиме веб-клиента необходимо запустить браузер, который установлен у пользователя на компьютере, перейти по адресу веб-сервера, где опубликована информационная база. После чего на компьютере пользователя произойдет автоматическое исполнение веб-клиента. Чтобы производилась работа в этом режиме, необходим веб-сервер (используется IIS или Apache), который настроен на работу с 1С:Предприятие 8.2. Взаимодействие веб-сервера и системы на платформе 1С Предприятие происходит в клиент-серверном или файловом варианте работы. С браузером же веб-сервер взаимодействует по протоколам HTTPS или HTTP.


Весь функционал в режиме веб-клиента исполняется 1С:Предприятие 8.2 при помощи языка JavaScript. При этом клиентские модули, которые были разработаны в конфигурации, автоматически транслируются в JavaScript из встроенного языка 1С:Предприятия 8. Поэтому разработка прикладных решений происходит в конфигураторе системы 1С:Предприятия, а написание серверного и клиентского кода ведется на встроенном языке 1С:Предприятия и не зависит от клиентского приложения (веб-клиент, тонкий, толстый).

Режим управляемого приложения

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

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

Прикладные решения

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

Фирма «1С» тщательно прорабатывает тот состав, который включается в конкретное прикладное решение. При этом учитываются современные методики управления, тот опыт автоматизации, который уже накоплен фирмой «1С» и партнерами, и, конечно, те потребности компаний, которые не охватываются набором функционала, входящим в стандартные методики (ERP, ERP II, SCM, CRM и т.д.). При разработке тиражных решений анализируется опыт применения пользователями системы 1С:Предприятия, а так же тщательно отслеживается изменение потребностей.

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

Новый дизайн интерфейса

Дизайн интерфейса системы программ «1С:Предприятие 8.2» претерпел некоторые изменения и стал более «настраиваемым».

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

Поддержка и сервис

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

Фирма «1С» и партнерское сообщество обеспечивает эффективную поддержку системы «1С:Предприятия 8.2». Во многом это происходит благодаря стандартизации прикладных решений и платформы.

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

Во всех регионах России работают франчайзинговые фирмы, которые предлагают услуги по внедрению и адаптации прикладных решений, а также обучению работы с ними и сопровождению. У фирмы «1С» существует ряд требований для специалистов: обязательная сертификация, а также регулярное обучение фирмой «1С», что обеспечивает высокий уровень услуг, оказываемых фирмами-партнерами в части внедрения, поддержки и развития прикладных решений.

Построена простая конфигурация учета движения картриджей для лазерной техники в организации с использованием платформы 1С Предприятие 8.3 и интерфейса "Такси". Учитывается движение каждого картриджа (покупка, заправка, восстановление, ремонт, установка в принтер и пр.) и расход средств по каждому картриджу. Основная цель - освоить разработку приложений на базе платформы 1С Предприятие 8.3 на примере построения работоспособного и полезного приложения.

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

Работаю в отделе IT крупной организации с большим количеством лазерных принтеров и МФУ. Учет движения картриджей для них является актуальной задачей и требованием руководства.

Постановка задачи.

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

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

План реализации.

Используем платформу 1С Предприятие 8.3 как самую современную на текущий момент.

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

Предположим для начала, что в нашей конфигурации будут следующие объекты:

Справочники:

НоменклатураКартриджей

Картриджи

НоменклатураКартриджейЦены

Принтеры

Номенклатура Принтеров

Поставщики

Документы:

ПоступлениеКартриджей

ЗаменаКартриджа

СписаниеКартриджей

Перечисления:

ДаНет

СостояниеКартриджей

ПричиныЗаменыКартриджей

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

КартриджиЗамена

Регистры накоплений:

КартриджиОплата

Алгоритм работы.

Основным «действующим лицом» является список имеющихся картриджей (Справочник Картриджи ). Изначально список заполняется документом ПоступлениеКартриджей НоменклатураКартриджей . При покупке картриджа значение реквизит Состояние в документе выбирается как Новый . Цена покупки определяется по справочнику НоменклатураКартриджейЦены натекущую дату СерийныйНомер ). Реквизит Местоположение определяется как «Склад» .

Учет заправок, восстановления, ремонта и пр. существующих уже картриджей осуществляется также документом ПоступлениеКартриджей . Тип картриджей определяется по справочнику НоменклатураКартриджей . Состояние картриджа определяется из перечисления СостояниеКартриджей . Цена работы (заправка, восстановление) определяется по справочнику НоменклатураКартриджейЦены . Уникальность картриджа определяется его серийным номером (реквизит СерийныйНомер ).

При проведении документа ПоступлениеКартриджей в табличную часть ЗаменаКартриджей справочника Картриджи добавляется строка с реквизитами текущего документа и у соответствующих картриджей (с серийным номером из документа) в справочнике Картриджи меняется значение реквизитов Состояние и Местоположение .

Кроме того, в регистрнакоплений КартриджиОплата

Учет замены картриджа в конкретном принтере (справочник Принтеры ) осуществляется документом ЗаменаКартриджа . В документе указывается текущий принтер. Уникальность принтера определяется реквизитом СерийныйНомер . Указывается устанавливаемый и заменяемый картридж (серийные номера картриджей).

При проведении документа ЗаменаКартриджа в табличной части справочника Принтеры у текущего принтера добавляется строка с реквизитами документа и изменяется реквизит Картридж . В справочнике Картриджи у текущих картриджей меняется значение реквизитов Состояние и Местоположение . Для установленного картриджа в реквизите Местоположение прописывается текущий принтер, а у снятого картриджа - «Склад» .

Кроме того, в регистр КартриджиЗамена заносится движение по данному документу.

Списание картриджей осуществляется отдельным документом СписаниеКартриджей .

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

Реализация.

Приступим собственно к конфигурированию.

Создадим пустую базу в конфигураторе, назовем ее гордо «Айтишник» и организуем подсистему Учет картриджей . Не буду описывать по шагам, как это сделать, поскольку по данному вопросу книг хватает.

Сначала добавим перечисления: ДаНет , СостояниеКартриджей и ПричиныЗаменыКартриджей , которые нам понадобятся в дальнейшем. Состав перечислений виден на Рис.2

Сконфигурируем простые справочники НоменклатураКартриджей и НоменклатураПринтеров.

Реквизиту ТипКартриджа в справочнике НоменклатураПринтеров присвоим тип ссылка на справочник НоменклатураКартриджей (Рис.3). Не забываем, что все сформированные нами объекты конфигурации надо включить в состав подсистемы УчетКартриджей .

В справочнике Принтеры несколько реквизитов имеют тип ссылки:

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

Теперь настала пора добавления в конфигурацию документов. Сконфигурируем в дереве объектов конфигурации объект документ ПоступлениеКартриджей с реквизитами и табличной частью НоменклатураДокумента . Регистров накопления у нас в конфигурации пока нет - закладка Движение для документа остается пустой. Поскольку нам надо будет писать свою обработку документа, а пишется программный код в модуле формы документа, то и создадим эту самую форму (Рис.9). Делаем все по умолчанию, как написано в книжках (Форма - Добавить - ФормаДокумента).

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

Наконец, для учета поступления картриджей заводим регистр накопления КартриджиОплата с измерениями, ресурсами и реквизитами (Рис.10).

В закладке Регистраторы указываем наш документ ПоступлениеКартриджей . Сохраняем конфигурацию.

Возвращаемся по дереву объектов в документ ПоступлениеКартриджей . На закладке Движение выбираем регистр КартриджиОплата , запускаем Конструктор движений и заполняем поле Выражение значениями реквизитов документа (Рис.11).

Жмем ОК и попадаем в Модуль объекта программный код (Рис.12).

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

При поступлении нового картриджа (покупка) в справочнике Картриджи должна добавляться строка с уникальным номером картриджа и соответствующими (из документа) реквизитами. При этом реквизит СостояниеКартриджа будет иметь значение «Новый » , а реквизит Местоположение - значение «Склад ». Табличная часть справочника Картриджи при этом не заполняется.

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

При поступлении заправленного тонером (восстановленного, отремонтированного и пр.) картриджа считается, что картридж с таким номером уже есть в справочнике Картриджи , и в этом случае при проведении документа ПоступлениеКартриджей, добавляется строкав Табличную частьЗаправки и меняются значения реквизитов Местонахождение и Состояние у текущего картриджа. Добавленный в Модуль объекта код показан на Рис.13.

Теперь можно провести первую пробу работоспособности программы. В Предприятие создаем документ ПоступлениеКартриджей (Рис.14). Нажимаем кнопку Провести и закрыть . Переходим в справочник Картриджи и видим, что в нем появилась строчка с реквизитами купленного картриджа с пустой табличной частью(Рис.15).

Откроем регистр КартриджиОплата (пункт в меню Регистр оплаты картриджей ) и увидим там аналогичную строку.

Создаем и проводим второй документ ПоступлениеКартриджей с тем же картриджем, но заправленным (Рис.16).

Переходим в справочник Картриджи и видим, что у заведенного нами картриджа добавилась строчка в табличной части Заправки и изменился реквизит Состояние (Рис.17).

Ура! Программа работает!

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

Это будет позднее, а сейчас займемся заменой картриджей - создадим документ ЗаменаКартриджа и соответствующий регистр сведений КартриджиЗамена .

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

Для учета замены картриджей заводим для разнообразия регистр сведений (не регистр накоплений) КартриджиЗамена с измерениями и реквизитами (Рис.19). Получилось пока без ресурсов как-то.

В закладке Регистраторы указываем наш документ ЗаменаКартриджа .

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

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

Процедура ОбработкаПроведения(Отказ, Режим)

// используемые справочники

Принтеры = Справочники.Принтеры;

Картриджи = Справочники.Картриджи;

// конец вставки используемые справочники

// регистр КартриджиЗамена

Движения.КартриджиЗамена.Записывать = Истина ;

Для Каждого ТекСтрокаНоменклатураДокумента Из НоменклатураДокумента Цикл

Движение = Движения.КартриджиЗамена.Добавить();

Движение.НоменклатураКартриджей = НоменклатураКартриджа;

Движение.СнятКартриджНомер = ТекСтрокаНоменклатураДокумента.СнятКартриджНомер;

Движение.УстановленКартриджНомер=

Движение.МодельПринтера = МодельПринтера;

Движение.ПринтерСерийныйНомер = ТекСтрокаНоменклатураДокумента.ПринтерСерийныйНомер;

Движение.ПринтерИнвентарныйНомер =

Движение.ТипКартриджа = ТекСтрокаНоменклатураДокумента.ТипКартриджа;

Движение.ЗаменаКтоДелал = ЗаменаКтоДелал;

Движение.ПричинаЗамены = ТекСтрокаНоменклатураДокумента.ПричинаЗамены;

// изменяем справочник Принтеры

СтрокаНаименования = ТекСтрокаНоменклатураДокумента.ПринтерСерийныйНомер;

Тогда ТекущийОбъект =

Принтеры.НайтиПоРеквизиту("СерийныйНомер",СтрокаНаименования).ПолучитьОбъект();

ТекущийОбъект.НомерКартриджаСейчас =

ТекСтрокаНоменклатураДокумента.УстановленКартриджНомер;

НоваяСтрока = ТекущийОбъект.ЗаменаКартриджей.Добавить();

НоваяСтрока.ДатаЗамены = Дата;

НоваяСтрока.ВидКартриджа = ТекСтрокаНоменклатураДокумента.ТипКартриджа;

НоваяСтрока.НомерУстановленногоКартриджа =

ТекСтрокаНоменклатураДокумента.УстановленКартриджНомер;

НоваяСтрока.НомерСнятогоКартриджа =

ТекСтрокаНоменклатураДокумента.СнятКартриджНомер;

НоваяСтрока.КтоЗаменил = ЗаменаКтоДелал;

НоваяСтрока.ПричинаЗамены = ТекСтрокаНоменклатураДокумента.ПричинаЗамены;

ТекущийОбъект.Записать();

КонецЕсли;

// изменяем справочник Картриджи - установленный картридж

СтрокаНаименования = ТекСтрокаНоменклатураДокумента.УстановленКартриджНомер;

тогда ТекущийОбъект =

Строка = " ";

Строка = Строка + МодельПринтера + " " +

ТекСтрокаНоменклатураДокумента.ПринтерСерийныйНомер + " " +

ТекСтрокаНоменклатураДокумента.ПринтерИнвентарныйНомер;

ТекущийОбъект.МестоНахождения = Строка;

ТекущийОбъект.Записать();

КонецЕсли;

// снятый картридж

СтрокаНаименования = ТекСтрокаНоменклатураДокумента.СнятКартриджНомер;

Тогда ТекущийОбъект =

Картриджи.НайтиПоРеквизиту("Номер",СтрокаНаименования).ПолучитьОбъект();

ТекущийОбъект.МестоНахождения = "Склад";

ТекущийОбъект.Состояние = Перечисления.СостояниеКартриджа.Пустой;

ТекущийОбъект.Записать();

КонецЕсли;

// конец изменения справочников

КонецЦикла;

КонецПроцедуры;

Для проверки заполняем и проводим документ ЗаменаКартриджа (Рис.21) . Заходимв справочник Принтеры и видим, что у выбранного принтера добавилась строка в табличную часть Заправки с реквизитами проведенного нами документа и реквизит НомерКартриджаСейчас принял значение номера установленного картриджа (Рис.22).

В справочнике Картриджи у картриджа, установленного в принтер, в реквизит Местоположение записались данные текущего принтера (Рис.23) . И кроме того в регистр сведений КартриджиЗамена записалось движение по документу (Рис.24)

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

С точки зрения «идеологии» 1С наверно неправильно изменять реквизиты справочников проведением документов, использовать справочник для хранения текущих цен - тут сказывается предыдущий опыт работы с таблицами автора статьи, а чем справочник не таблица?

Естественно требуется доработка функциональности, добавление отчетов, исправление ошибок и отладка. Об этом в следующей части статьи.

Полная версия статьи приведена в файле Часть1.doc

Название : 1С:Предприятие 8.1. Простые примеры разработки
Авторы : А.П. Габец, Д.И. Гончаров
Издательство : Питер, 1С-Паблишинг
Год : 2008
ISBN : 978-5-9677-0901-2
Поиск в Google : А.П. Габец, Д.И. Гончаров. 1С:Предприятие 8.1. Простые примеры разработки

Книга "1С:Предприятие 8.1. Простые примеры" разработки является справочником, в котором рассматриваются простые примеры разработки алгоритмов в среде 1С:Предприятие версии 8.1.

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

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

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

Введение

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

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

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

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

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

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

Стиль изложения соответствует цели издания, поэтому материал предоставляется в форме вопросов и ответов, как, например, в следующем разделе.

Источник: Введение

Структура книги

Введение

  • Как работать с изданием?

Глава 1. Примитивные типы, системные функции

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

Глава 2. Универсальные коллекции

  • Массив
    • В каких ситуациях обычно используются массивы?
    • Как создать массив?
    • Как создать многомерный массив?
    • Как добавить элементы в массив?
    • Как определить размер массива?
    • Как обратиться к элементу массива?
    • Как перебрать элементы массива?
    • Как удалить элемент массива?
    • Как удалить все элементы массива?
    • Как удалить повторяющиеся элементы массива?
    • Как скопировать массив?
    • Как проверить, что два массива идентичны?
    • В массив выгружены данные, содержащие наименования контрагентов. Как их отсортировать?
    • Есть массив, в который выгружены значения типа "СправочникСсылка.Номенклатура". Как удалить все пустые значения массива?
    • Как получить массив номенклатурных позиций, использованных в табличных частях "Номенклатура" и "Тара" накладной?
    • Есть две таблицы значений. Как получить массив совпадающих имен колонок?
    • Как в запросе сделать отбор по нескольким вариантам заполнения реквизита типа "ПеречислениеСсылка.<Имя перечисления>"?
    • Как из регистра сведений "РасчетчикиЗарплатыОрганизации" получить в виде массива всех расчетчиков зарплаты определенного подразделения организации?
  • Структура
    • В каких ситуациях обычно используются объекты типа "Структура"?
    • Как создать структуру?
    • Как добавить элементы в структуру?
    • Как обратиться к элементу структуры?
    • Как перебрать элементы структуры?
    • Как удалить элемент структуры?
    • Как в структуре установить значение для элемента с определенным ключом?
    • Как получить в структуру многомерные данные? Как собрать информацию по установленным в форме журнала отборам?
    • Как определить, есть ли в структуре элемент с ключом "Контрагент", и если есть, но содержит пустое значение справочника или Неопределено, как удалить этот элемент?
    • Как из табличной части "Товары" документа получить все строки, где значение реквизита "Цена" равно нулю, а значение реквизита "СтавкаНДС" равно значению "НДС18" перечисления "СтавкиНДС"?
    • Как получить данные о текущей учетной политике бухгалтерского учета организации из периодического регистра сведений на заданную дату?
    • Как сформировать структуру названий реквизитов табличной части произвольного документа?
    • Как получить запросом данные табличной части документа, имея структуру названий реквизитов табличной части?
  • Соответствие
    • В каких ситуациях обычно используются объекты типа "Соответствие"?
    • Как создать соответствие?
    • Как добавить элементы в соответствие?
    • Как обратиться к элементу соответствия?
    • Как перебрать элементы соответствия?
    • Как удалить элемент соответствия?
    • Как получить данные из соответствия?
    • Как получить многоуровневое соответствие видов расчетов, обладающих базовыми видами расчетов?
  • Список значений, таблица значений, дерево значений
    • В каких ситуациях обычно используются списки значений, таблицы значений, дерево значений?
    • Как создать список значений?
    • Как добавить элементы в список значений?
    • Как найти элемент списка значений?
    • Как обратиться к элементу списка значений?
    • Как перебрать элементы списка значений?
    • Как удалить элемент списка значений?
    • Как создать таблицу значений и заполнить ее поля?
    • Как найти значение в таблице значений?
    • Как перебрать строки таблицы значений?
    • Как удалить строки (колонки) таблицы значений?
    • Как заполнить таблицу значений, если имена колонок содержатся в переменных?
    • Как заполнить всю колонку таблицы значений нужным значением?
    • Как таблицу значений "ТаблицаПолучатель" заполнить данными таблицы значений "ИсходнаяТаблица"?
    • Как добавить колонки к таблице значений "ТаблицаЗначений" с ограничениями по типу?
    • Как изменить тип значения колонки таблицы значений, полученной выгрузкой из запроса?
    • Как самостоятельно заполнить дерево значений?

Глава 3. Прикладные объекты

  • Справочники
    • Как создать элемент (группу) справочника?
    • Как найти элемент справочника?
    • Как удалить элемент справочника?
    • Как перебрать элементы справочника?
    • Как выбрать все элементы из определенной группы?
    • Как перебрать элементы подчиненного справочника с помощью запроса?
    • Как перебрать элементы подчиненного справочника с помощью выборки справочника?
    • Как открыть форму списка (элемента) справочника?
    • Как добавить запись в табличную часть элемента справочника?
    • Как удалить строки из табличной части справочника?
    • Как перебрать строки табличной части справочника?
    • Как создать элемент в нужной группе?
    • Как узнать, есть ли у текущего элемента подчиненные?
    • Как узнать количество подчиненных элементов у выбранного элемента справочника?
    • Как узнать количество подчиненных элементов у выбранного элемента справочника, если количество подчиненных справочников больше чем один?
    • Как получить всех родителей выбранного элемента справочника?
    • Как получить запросом "полный" код элементов справочника, если тип кода – Строка?
    • Как получить все элементы справочника, содержащие в наименовании определенную подстроку, со всей иерархией, в которую они входят?
    • Как найти все элементы справочника, в которых не заполнен строковый реквизит?
    • Как перенести все элементы справочника "Контрагенты" из одной группы в другую?
    • Как организовать программный выбор элемента справочника?
    • Как сохранить фотографию сотрудника в справочнике "Сотрудники"?
  • Документы
    • Как создать новый документ?
    • Как найти документ?
    • Как открыть форму документа?
    • Как изменить значение реквизита и записать документ?
    • Как добавить строку в табличную часть документа, имея ссылку на документ?
    • Как удалить строки из табличной части документа?
    • Как перебрать строки документа?
    • Как выгрузить табличную часть документа?
    • Как посчитать итог в табличной части документа?
    • Как провести документ?
    • Как перебрать документы?
    • Как пометить на удаление все приходные накладные?
    • Как, имея ссылку на документ, создать в базе его копию?
    • Как, имея ссылку на документ, прочитать его движения по регистру?
    • Как определить, по каким регистрам документ выполнил движения?
    • Как в табличной части документа удалить строки с нулевым значением реквизита "Количество"?
    • Как очистить колонку "СтавкаНДС" в табличном поле "Товары" уже заполненного документа?
    • Как заполнить значения свойств нового документа на основании существующего?
    • Как получить перечень приходных накладных, в которых не заполнены номенклатурные позиции?
    • Как на дату расходной накладной определить курс валюты управленческого учета? Валюта управленческого учета хранится в периодическом регистре сведений
    • Как из формы документа вызвать его неоперативное проведение?
    • Как в обработке проведения получить остатки на момент времени документа?
    • Как определить количество документов и количество разных значений реквизита в таблице записей документа?
    • В последовательность "ПартионныйУчет" добавлено измерение "Организация". Как теперь получить данные по границам последовательности для каждого значения этого
    • измерения?
  • Хранение сведений
    • Как добавить запись в непериодический независимый регистр сведений?
    • Как считать содержимое непериодического независимого регистра сведений "СобственныеКонтрагенты"?
    • Как удалить все записи из независимого регистра сведений?
    • Как удалить записи независимого регистра сведений с отбором по конкретной организации?
    • Как добавить запись в периодический независимый регистр сведений?
    • Как прочитать (изменить) записи в периодическом независимом регистре сведений?
    • Как удалить записи в периодическом независимом регистре сведений?
    • Как в периодическом независимом регистре сведений "КурсыВалют" удалить все записи по валютам с наименованиями "EUR" и "USD", период которых меньше 01 января 2005 года?
    • Как прочитать данные, актуальные на определенную дату, из регистра сведений "Курсы валют" с отбором по нескольким валютам (отбор по измерениям)?
    • Как поменять период у записей периодического независимого регистра, соответствующих ряду условий?
    • Как сделать периодическим реквизит уже заполненного справочника?
    • Как добавить записи в регистр сведений, подчиненный регистратору?
    • Как прочитать (изменить) записи в регистре сведений, подчиненном регистратору?
    • Как удалить записи из регистра сведений, подчиненного регистратору?
    • Бухгалтерский учет
    • Как в регистре бухгалтерии сформировать проводки?
    • Как получить остаток по счету?
    • Как получить обороты по счету?
    • Как получить остатки по счетам?
    • Как перенести остаток со счета на счет?
    • Как найти первый документ, приведший к появлению кредитового остатка на счете?
    • Как выбрать все счета, в аналитике которых присутствует либо вид субконто "Контрагент", либо вид субконто "Договор"?
    • Как выбрать все счета, в аналитике которых присутствует как вид субконто "Контрагент", так и вид субконто "Номенклатура"?
    • Как добавить новый вид субконто к счету?
    • Как из регистра бухгалтерии "Хозрасчетный" получить обороты только по валютным счетам?
    • Как выбрать в регистре бухгалтерии "Хозрасчетный" обороты по "60-м" счетам, исключив внутренние обороты между ними?
    • Как реализовать метод "красного сторно" для регистра бухгалтерии?
  • Сложные периодические расчеты
    • Как получить сумму начисления по конкретному виду расчета указанному сотруднику в указанном периоде?
    • Как получить сумму всех начислений указанному сотруднику в указанном периоде?
    • Как получить таблицу перерасчетов по перерасчетам нескольких регистров?
    • Как для документа "НачислениеЗарплатыРаботникам" определить номера строк записей полностью вытесненных видов расчета?
    • Как сформировать расчетный листок сотрудника?
    • Как организовать сторнирование уже произведенных расчетов прошлых периодов?
  • Бизнес-процессы
    • Как определить бизнес-процесс, в котором количество последовательных этапов определяется индивидуально на момент старта экземпляра процесса?
    • Как при работе с бизнес-процессами отказаться от стандартного способа формирования задачи и сформировать ее программно?
    • Прочие прикладные объекты
    • Как, не открывая форму внешней обработки, выполнить ее процедуру для определенного объекта?
    • Как быстро получить информацию по всем объектам, находящимся в компетенции конкретного менеджера (элемент справочника "Пользователи") по продажам?
    • Как назначить обработчик события экземпляра объекта 1С:Предприятие?
    • Как назначить обработчик события для нескольких объектов конфигурации одновременно?

Глава 4. Работа с данными

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

Глава 5. Формы и элементы управления

  • Работа с формами
    • Как открыть форму документа?
    • Как открыть форму внешней обработки?
    • Как открыть форму отчета так, чтобы она не перекрывала собой ту форму, из которой она открыта?
    • Как открыть форму отчета на весь экран?
    • Как из формы документа открыть форму списка данного документа, спозиционировавшись на нем же?
    • В документе есть реквизит "Контрагент". Как открыть форму подчиненного ему справочника "ДоговорыКонтрагентов"?
    • Как в форме отобразить картинку, сохраненную в реквизите справочника?
    • Как в журнале документов "УчетКадров" отобрать только документы "ПриемНаРаботу"?
    • Как узнать интервал дат в открытом текущем журнале?
    • Как при открытии справочника сделать отбор по контрагентам, входящим в список?
    • Как обеспечить, чтобы для выбора значения покупателя в расходной накладной справочник "Контрагенты" открывался сразу с открытой группой "Покупатели"?
  • Табличное поле
    • Как запретить пользователю изменять порядок следования колонок в табличном поле?
    • Как запретить пользователю изменять любые настройки колонок табличного поля?
    • Как вывести информацию о том, какой отбор установлен в журнале документов?
    • Как в форме справочника установить курсор на элемент с известным наименованием?
    • Как в форме списка сделать отбор по значению реквизита?
    • Как запретить выдачу сообщения "Введенные данные не отображены в списке, так как не соответствуют отбору" при добавлении новых элементов в справочник?
    • Как заполнить ячейку табличного поля данными?
    • Как изменить цвет фона ячейки табличного поля в зависимости от значения, выводимого в нее?
    • Как в табличное поле "ВыбранныеКонтрагенты" добавить новую колонку "ОсновнойДоговор", заполнить ее значения и предоставить возможность открытия этих значений?
    • Как задать список выбора для колонки "ВидДокумента" табличного поля?
    • Как обеспечить возможность отбора и сортировки данных по реквизитам, не отображаемым в табличном поле формы списка справочника?
    • Как реализовать перетаскивание между элементами управления?
    • Как вывести остатки на складах в списке номенклатуры?
  • Другие элементы управления
    • В форме есть панель со страницами. Как разместить картинку на закладке?
    • Как обеспечить, чтобы при открытии формы уже записанного элемента справочника "Контрагенты" активной была закладка "СчетаИДоговоры" панели "Панель"?
    • Как организовать выбор из нескольких списков документов для открытия?
    • Как можно организовать подстановку обращения к персоне?
    • Как в командной панели создать подменю с кнопками?
    • Как созданной кнопке назначить "горячие клавиши"?
    • Как реализовать заполнение возможных значений поля выбора "ОбрабатываемаяТабличнаяЧасть" при заполнении поля ввода "ОбрабатываемыйДокумент"?
    • Если пользователь указал несколько дат в поле календаря, как их перебрать?
    • Как организовать работу с индикатором?
    • Как у элемента управления сменить источник данных?
    • Как задать представление даты, отображаемое в поле ввода по умолчанию?
    • Как вывести текст в поле картинки в том случае, если картинка не выбрана?
    • Как открыть пользователю стандартный диалог выбора цвета?
    • Как заполнить список в форме данными запроса?
    • Как отобразить в форме файл графической схемы?
  • Интерфейсы, стили
    • Как задать различные стили 1С:Предприятия для различных категорий пользователей?
    • Есть список имен интерфейсов с пометками. Как сделать помеченные интерфейсы видимыми?
    • Как из формы обработки отключить глобальный обработчик ожиданий?
  • Запросы
    • Как получить данные из табличной части документов?
    • Как получить данные из табличной части документов и представить их в иерархическом виде?
    • Как подсчитать количество одинаковых элементов в выбираемых данных?
    • Как применять условия для отбора по значениям полей, вычисленных как результат агрегатной функции?
    • Как ограничить выборку из виртуальной таблицы?
    • Как просуммировать данные по одинаковым значениям одного из полей выборки?
    • Как получить только те записи, в которых значение определенного поля превышает указанное значение?
    • Как обратиться к подчиненным полям в запросе?
    • Как объединить результаты нескольких запросов?
    • Как выбрать из двух таблиц данные, удовлетворяющие определенному условию?
    • Как дополнить данные одной таблицы данными, выбранными из другой таблицы по определенному условию?
    • Как объединить данные из двух таблиц по определенному условию?
    • Как вывести некоторое значение вместо NULL в запросе?
    • Как вместе с данными некоторой таблицы получить общие итоги из этой же таблицы?
    • Как получить иерархические итоги по группе справочника?
    • Как по состоянию на заданную дату по регистру "ОстаткиНаСкладе" найти последний документ "ПоступлениеТоваровУслуг", по которому приходила номенклатура?
    • Как подсчитать количество записей с одинаковым значением некоторого поля?
    • Как в итоговых записях вывести количество различных записей?
    • Как узнать количество записей в результате запроса?
    • Как проверить достаточность остатков товаров на складах, указанных в документе?
    • Как в запросе осуществить отбор по значению перечисления?
    • Как получить курсы валют на две интересующие даты?
    • Как одним запросом получить таблицу расхождений курсов взаиморасчетов всех выписанных документов "ЗаказПокупателя" с официальным курсом?
    • Как написать запрос таким образом, чтобы на определенном уровне иерархии запроса считались одни итоговые функции, а на другом уровне – другие?
    • Как получить перечень документов, приведших данные подчиненного периодического регистра сведений к определенному состоянию?
    • Как установить параметры запроса, если текст запроса заранее неизвестен?
    • Как создать временную таблицу?
    • Как создать временную таблицу из внешнего источника данных?
    • Как выполнить запрос к данным временной таблицы?
    • Как удалить временную таблицу?
    • Как в запросе указать предопределенное значение?
    • Как в тексте запроса использовать пустую ссылку?
    • Как в тексте запроса обратиться к значению системного перечисления?
    • Как в запросе использовать несколько полей периодов?
  • Система компоновки данных
    • Как в основной форме отчета, использующего систему компоновки данных, установить отбор?
    • Как сохранять и восстанавливать настройки системы компоновки данных?
    • Как в системе компоновки использовать несколько источников данных?
  • Анализ данных
    • Как получить данные о товарах, продаваемых вместе?
    • Как порекомендовать сопутствующие товары?
    • Как посмотреть, что будет покупаться в дальнейшем?

Глава 7. Представление результатов отчетов

  • Табличный документ, текстовый документ
    • Как вывести результат запроса в табличный документ?
    • Как вывести данные в табличный документ с возможностью сворачивания и разворачивания данных по группировкам?
    • Как при выводе данных в табличный документ свернуть все выводимые группировки?
    • Как при выводе данных в табличный документ произвольно определить состав свернутых и развернутых группировок?
    • Как выгрузить результат запроса с показом иерархии?
    • Где и как можно увидеть макет, автоматически генерируемый построителем отчета?
    • Как из построителя отчета передать данные в сводную таблицу?
    • Отчет формируется построителем отчета. Как убрать одну из колонок, поместив ее данные в расшифровку другой?
    • Как сохранить настройки построителя отчета до следующего открытия формы отчета?
    • Как организовать показ примечаний в формируемом табличном документе?
    • Как обеспечить, чтобы при выводе на печать не печатались первая колонка и первая строка табличного документа "ДокументРезультат"?
    • Как обеспечить фиксацию верхней части табличного документа, генерируемого построителем отчета, по срезу шапки таблицы?
    • Табличный документ формируется построителем отчета. Как при печати табличного документа обеспечить вывод шапки таблицы на каждой странице?
    • Как при выводе на печать "длинного" документа указать в колонтитулах страниц номер документа, дату и номер страницы?
    • Табличный документ формируется по макету, автоматически генерируемому построителем отчета. Как задать ориентацию страницы при печати?
    • Табличный документ формируется построителем отчета. Как для всех выводимых числовых показателей установить вывод без дробной части?
    • Как для построителя отчета совместить назначение своего макета и применение одного из стандартных макетов оформления?
    • Как при получении данных из запроса обойти только итоговые записи?
    • Как при получении данных из запроса обойти только иерархические итоговые записи?
    • Как вывести картинку в табличный документ?
    • Как вывести картинку в табличный документ без изменения макета?
    • Как работать со сводной таблицей?
    • Как программно разместить данные в сводной таблице и оформить ее?
    • Как создать печатную форму посредством текстового шаблона?
  • Диаграммы
    • Как заполнить диаграмму данными?
    • Как заполнить данными измерительную диаграмму?
    • Как вывести результат запроса в сводную диаграмму?
    • Как заполнить диаграмму Ганта данными?
    • Как связать интервалы диаграммы Ганта?
    • Как обработать интерактивное изменение интервалов диаграммы Ганта?
    • Как разместить непериодические метки в диаграмме Ганта?
    • Как выделить некоторые интервалы фона диаграммы Ганта?
  • Географическая схема
    • Как отобразить в форме файл географической схемы?
    • Как отобразить в форме макет географической схемы?
    • Как изменить масштаб географической схемы?
    • Как отобразить на географической схеме выбранный город?
    • Как использовать таблицу значений в качестве источника данных географической схемы?

Глава 8. Администрирование

  • Запуск 1С:Предприятия 8 из командной строки
    • Как запустить 1С:Предприятие 8 из командной строки?
    • Как из командной строки заставить 1С:Предприятие 8 сделать выгрузку базы данных?
    • Как из командной строки обновить изменения текущей конфигурации в конфигурации базы данных?
    • Как выполнить тестирование и исправление информационной базы без проверки ссылочной целостности в автоматическом режиме?
    • Как выполнить проверку конфигурации в автоматическом режиме с выводом результатов проверки в файл?
    • Как сократить журнал регистрации программно?
    • Как выгрузить модули прикладного решения в виде текстовых файлов из командной строки?
    • Как загрузить в прикладное решение файлы справки, сохраненные в формате htm?
  • Задания
    • Как определить регламентную процедуру, запускаемую по расписанию?
    • Как запустить регламентное задание?
    • Как запустить процедуру асинхронно (фоновое задание)?
    • Как просмотреть данные по выполненным фоновым заданиям?
  • Программное администрирование кластера
    • Как просмотреть список кластеров, зарегистрированных на центральном сервере?
    • Как получить данные по рабочим серверам кластера?
    • Как посмотреть список баз, зарегистрированных в выбранном кластере?
    • Как получить данные по рабочим процессам, запущенным на рабочем сервере кластера?
    • Как запретить запуск всех рабочих процессов на рабочем сервере?
    • Как запустить остановленные на рабочем сервере рабочие процессы?
    • Как на рабочем сервере запустить новый рабочий процесс?
    • Как посмотреть информацию по соединениям, установленным в кластере?
    • Как получить более подробную информацию по информационной базе?
  • Разное
    • Как поменять значение рабочей даты?
    • Как установить/снять монопольный режим?
    • Как внести запись в журнал регистрации?
    • Как получить данные о зарегистрированных пользователях информационной базы?
    • Как определить общую системную информацию?
    • Как программно добавить пользователя в информационную базу?
    • Как создать собственный лог-файл для записи результатов работы внешней обработки?
    • Как в форме отобразить список пользователей, которые работают с данной информационной базой?
    • Как выгрузить журнал регистрации в XML-формате?
    • Как принудительно завершить работу всех пользователей информационной базы в клиент-серверном варианте работы?
    • Как организовать перезапуск клиентских приложений после динамического обновления конфигурации базы данных?
    • Как установить максимальный уровень регистрации событий в журнале регистрации?
    • Как отключить регистрацию событий в журнале регистрации?
    • Как запретить устанавливать соединение с базой данных?
    • Как снять запрет на установку соединений с базой данных?
    • Как просмотреть структуру таблиц информационной базы?

Глава 9. Интеграция

  • Текстовый файл
    • Как выгрузить данные из справочника в текстовый файл?
    • Как загрузить данные из текстового файла?
    • Работа с текстом. Модель последовательного доступа
  • XML
    • Как из одной базы перенести документ в другую базу?
    • Как можно сформировать XML-документ произвольной структуры?
    • Как сформировать XML-документ в строку?
    • Как можно обмениваться данными, используя XML-сериализацию через файлы других форматов?
    • Как можно загрузить XML-документ произвольной структуры?
  • XDTO
    • Как загрузить данные из XML-документа по представленной XML-схеме?
    • Как выгрузить данные из XML-документа по представленной XML-схеме?
    • Как работать с большими файлами, используя XDTO?
    • Как получить объект XDTO, соответствующий некоторому справочнику в текущей конфигурации?
  • DBF-файлы
    • Как можно построить выгрузку-загрузку посредством файлов DBF?
  • Работа с HTML-документами
    • Заполнение HTML-анкет
  • Работа с файлами
    • Как организовать диалог выбора текстового файла?
    • Как прочитать информацию о файле?
    • Как получить список файлов в указанном каталоге?
    • Как переместить файл, выложенный на FTP, к себе на локальный компьютер?
    • Как разделить большой файл на несколько файлов определенного размера?
    • Как поместить файлы в архив?
    • Как сравнить два текстовых файла?
    • Как организовать контроль формирования файла внешним приложением?
  • ActiveX
    • Как использовать элементы управления ActiveX?
  • Макеты Active Document
    • Как сформировать новый договор на основании файла Microsoft Office Word?
  • Работа с Интернетом
    • Работа с электронной почтой
    • Работа с файлами
  • Работа с COM-объектами
    • Как из одной базы 1С:Предприятия 8.0 перенести остатки товаров в другую базу, используя COM-соединение?
    • Пример обращения к программе 1С:Предприятие 8.0 из модуля Microsoft Office Excel через COM-соединение
    • Как организовать считывание данных из файлов *.xls?
    • Как запустить макрос, записанный в книге Microsoft Office Excel?
    • Как создать документ программы Microsoft Office Excel по оформлению, приведенному в другом документе?
    • Как выгрузить прайс-лист в документ программы Microsoft Office Word?
    • Как в 1С:Предприятии 8 обработать событие перед закрытием документа Microsoft Office Word?
    • Как выполнить запрос к произвольной базе данных SQL?
  • Automation Client/Server (OLE)
    • Как из одной базы 1С:Предприятия 8 интерактивно заполнить документ в другой базе, используя Automation Client/Server (OLE)?
    • Как из таблицы Excel загрузить список номенклатуры в 1С:Предприятие 8 с возможностью редактирования?
  • Обмен данными
    • Как организовать работу удаленных складов?
    • Как при создании начального образа управлять выгрузкой объектов разных видов?
    • Как просмотреть объекты, для которых зарегистрированы изменения?
    • Как организовать обмен данными между произвольными конфигурациями 1С:Предприятия 8.0?
    • Как принудительно зарегистрировать изменения объектов?
  • Web-сервисы
    • Как обратиться к Web-сервису динамически (по URL)?
    • Как обратиться к Web-сервису по WS-ссылке?
    • Как определить Web-сервис?
  • Web-расширение
    • Как в форме списка номенклатуры отменить все установленные отборы?
    • Как запретить перенос содержимого ячеек в форме списка расходных накладных?
    • Как открыть список расходных накладных с отбором, установленным по определенному складу?
    • Как добавить кнопку для ввода документа на основании?

24
июл
2015

Программирование в 1С:Предприятие 8.3 (Сергей Кашаев)

ISBN: 978-5-496-01234-8
Формат: PDF, eBook (изначально компьютерное)
Сергей Кашаев
Год выпуска: 2014
Жанр: Программирование, прикладные программы
Издательство: Питер
Язык: Русский
Количество страниц: 304

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


31
мая
2014

Азбука программирования в 1С. Предприятие 8.2 (Игорь Ощенко)

ISBN: 978-5-9775-0852-0
Формат: PDF, OCR без ошибок
Автор: Игорь Ощенко
Год выпуска: 2013

Издательство: БХВ-Петербург
Язык: Русский
Количество страниц: 272
Описание: Обучение программированию и конфигурированию в 1С:Предприятие 8.2 ведется по принципу "делай как я". Программный код подробно комментируется и разбирается на примерах. Вы научитесь самостоятельно устанавливать систему 1С:Предприятие и подключать к ней любое количество баз данных, дорабатывать и поддерживать работающую конфигурацию, разрабатывать новые отчеты различной сложности, овл...


04
мая
2015

1С: Предприятие 8. Управление торговыми операциями в вопросах и ответах. 7-е издание (Богачева Т. Г.)

ISBN: 978-5-9677-2296-7

Автор: Богачева Т. Г.
Год выпуска: 2015
Жанр: Компьютерная литература
Издательство: 1С-Паблишинг
Язык: Русский
Количество страниц: 978
Описание: В книге рассматриваются вопросы начального заполнения данных и регистрации различных торговых операций в программе "1С:Управление торговлей 8", редакция 11. Оформление торговых операций продемонстрировано на конкретных примерах, основанных на данных, которые включены в демонстрационную базу программы "1С:Управление торговлей 8", редакция 11 (версия 11.1.9). Информация в книге предс...


08
янв
2009

1С Предприятие 8.0 А.Гладких

Формат: PDF, Отсканированные страницы
Год выпуска: 2005
Автор: А.Гладких
Жанр: учебная литература
Издательство: Тритон
Количество страниц: 259
Описание: Настоящее руководство адресовано пользователям системы «1C: Предприятие» версии 8.0 и дает полное описание функциональных возможностей и приемов работы с данной системой.


05
мар
2014

1С:Бухгалтерия 8.2 для бухгалтера (Николай Селищев)

ISBN: 978-5-49807-938-7
Формат: PDF, eBook (изначально компьютерное)
Автор: Николай Селищев
Год выпуска: 2011
Жанр: Компьютерная литература
Издательство: Питер
Серия: 1Специалист
Язык: Русский
Количество страниц: 400
Описание: Подробное иллюстрированное практическое руководство по работе с новейшим и самым современным программным продуктом по ведению бухгалтерского и налогового учета на предприятиях любых форм собственности - программе "1С:Бухгалтерия 8.2". Эта книга знакомит читателя с процессом ведения бухгалтерского и налогового учета с использованием всех новых возможностей программы "1С: ...


01
ноя
2013

1С: Управление небольшой фирмой 8.2 с нуля. 100 уроков для начинающих (Алексей Гладкий)

ISBN: 978-5-9775-0768-4
Формат: PDF, eBook (изначально компьютерное)
Автор: Алексей Гладкий
Год выпуска: 2012
Жанр: Компьютерная литература
Издательство: БХВ-Петербург
Язык: Русский
Количество страниц: 288
Описание: Книга предоставляет полное описание приемов и методов работы с программой "1С: Управление небольшой фирмой 8.2". Показано, как автоматизировать управленческий учет всех основных операций, а также автоматизировать процессы организационного характера (маркетинг, построение кадровой политики и др.). Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с пе...


23
июн
2007

Жанр: Программирование
Автор: Хомоненко А.Д.
Страна: Россия
Количество страниц: 252
Описание: Содержит систематическое изложение основных приемов программирования на языке
С++: описание типов даных, объявление переменных, организация разветвлений и циклов, описание и использование массивов, указателей, функций. Рассматриваются понятия и приёмы объектно-ориентированного программирования. Описываеттся технология разработки программ в среде Borland C++ Builder.
Формат: PDF


10
фев
2010

Программирование в Delphi глазами хакера (Флеиов М. Е.)

ISBN: 5-94157-351-0
Формат: PDF, eBook (изначально компьютерное)
Год выпуска: 2003
Жанр: Програмирование
Издательство: БХВ-Петербург
Язык: Русский
Количество страниц: 368
Описание: ГЛАВА 1. МИНИМИЗАЦИЯ И НЕВИДИМОСТЬ ГЛАВА 2. ПРОСТЫЕ ШУТКИ ГЛАВА 3. СИСТЕМА ГЛАВА 4. ПРОСТЫЕ ПРИЕМЫ РАБОТЫ С СЕТЬЮ ГЛАВА 5. СЕТЬ НА НИЗКОМ УРОВНЕ ГЛАВА 6. ЖЕЛЕЗНАЯ МАСТЕРСКАЯ ГЛАВА 7. ПОЛЕЗНОЕ
Доп. информация: Все нужные программы вы можете найти здесь =


25
янв
2014

Программирование под Android (Брайан Харди, Билл Филлипс)

ISBN: 978-5-496-00502-9
Формат: PDF, eBook (изначально компьютерное)
Автор: Брайан Харди, Билл Филлипс
Год выпуска: 2014
Жанр: Программирование
Издательство: Питер
Серия: Для профессионалов
Язык: Русский
Количество страниц: 592
Описание: Эта книга научит вас всем тонкостям разработки приложений для мобильных устройств, работающих на популярной операционной системе Android. Основанное на учебном курсе известного образовательного IT-проекта Big Nerd Ranch, это издание содержит ключевые концепции программирования в Android, разъяснение API и множество примеров кода и упражнений. В процессе рабо...


24
мар
2014

Программирование для Android. Самоучитель (Денис Колисниченко)

ISBN: 978-5-9775-0770-7
Формат: PDF, eBook (изначально компьютерное)
Автор: Денис Колисниченко
Год выпуска: 2012
Жанр: Программирование
Издательство: БХВ-Петербург
Серия: Самоучитель
Язык: Русский
Количество страниц: 272
Описание: Рассмотрены все основные аспекты создания приложений для платформы Android: установка необходимого программного обеспечения (JDK, Eclipse и Android SDK), использование эмулятора Android, создание интерфейса пользователя, работа с графикой, воспроизведение звука и видео, методы хранения данных (в том числе СУБД SQLite), взаимодействие с аппаратными средствами смартфо...


17
сен
2009

Философия С++. Практическое программирование

ISBN: 5-469-00043-5, 0130353132

Год выпуска: 2004
Автор: Брюс Эккель
Жанр: Программирование
Издательство: Питер
Количество страниц: 608
Описание: Книга отличается от других учебников по C++ новым подходом к изложению материала, основанным на логике и здравом смысле. Вместо простого перечисления языковых конструкций, снабженных примерами, авторы стремятся научить читателя мыслить категориями C++. Они подробно объясняют, почему проектировщики языка принимали то или иное решение, описывают типичные проблемы и пути их решения. Во втором томе рассматриваются...


15
авг
2016

Изучаем программирование на JavaScript (Эрик Фримен, Элизабет Робсон)

ISBN: 978-5-496-01257-7, Head First O"Reilly
Формат: PDF, OCR с ошибками
Автор: Эрик Фримен, Элизабет Робсон
Год выпуска: 2015
Жанр: Языки программирования
Издательство: Питер
Язык: Русский
Количество страниц: 640
Описание: Вы готовы сделать шаг вперед в веб-программировании и перейти от верстки в HTML и CSS к созданию полноценных динамических страниц? Тогда пришло время познакомиться с самым "горячим" языком программирования - JavaScript! С помощью этой книги вы узнаете все о языке JavaScript - от переменных до циклов. Вы поймете, почему разные браузеры по-разному реагируют на код и как напис...


02
мар
2013

Программирование игр под Android (Марио Цехнер)

ISBN: 978-5-459-01554-6
Формат: PDF, eBook (изначально компьютерное)
Автор: Марио Цехнер
Год выпуска: 2013
Жанр: Программирование
Издательство: Питер
Язык: Русский
Количество страниц: 688
Описание: Из данной книги вы узнаете все необходимое, чтобы стать успешным разработчиком под Android. Вы начнете обучение с фундаментальных вопросов проектирования игр и с основ программирования, а потом перейдете к созданию игрового движка и интересных игр. Этой информации вам будет достаточно, чтобы приступить к творческой работе и создавать собственные приложения для Android. В книге подробно описан весь...


18
окт
2010

Программирование на языке Ruby (Хэл Фултон)

Формат: DjVu, Отсканированные страницы
Издательство: М., ДМК Пресс ISBN: 5-94074-357-9
Год выпуска: 2007
Жанр: Программирование
Язык: Русский
Количество страниц: 688
Описание: Ruby - относительно новый объектно-ориентированный язык, разработанный Юкихиро Мацумото в 1995 году и позаимствовавший некоторые особенности у языков LISP, Smalltalk, Perl, CLU и других. Язык активно развивается и применяется в самых разных областях: от системного администрирования до разработки сложных динамических сайтов. Книга является полноценным руководством по Ruby - ее можно использовать и как учебник, и как спра...


22
мар
2016

Программирование для Android 5. Самоучитель (Денис Колисниченко)

ISBN: 978-5-9775-3548-9
Формат: PDF, eBook (изначально компьютерное)
Автор: Денис Колисниченко
Год выпуска: 2015
Жанр: Компьютерная литература, программирование
Издательство: БХВ-Петербург
Язык: Русский
Количество страниц: 303
Описание: Рассмотрены все основные аспекты создания приложений для платформы Android 5 (API 21): установка необходимого программного обеспечения (JDK, Eclipse и Android SDK), использование эмулятора Android, создание интерфейса пользователя, работа с графикой, воспроизведение звука и видео, методы хранения данных (в том числе СУБД SQLite), взаимодействие с аппаратными с...


24
июн
2016

Программирование, графика и разработка игр

Автор: Подборка
Жанр: Разработка игр, языки программирования и программирование в целом, аналитика, графика, и прочее что так или иначе связано с разработкой.
Язык: Английский, Русский
Формат: PDF, DJVU, MOBI
Качество: Изначально электронное (ebook), Хороший скан
Иллюстрации: Цветные и черно-белые
Описание: В коллекции присутствуют книги преимущественно игро-разработческой направленности (AI, DirectX/OpenGL, основы 3D, техники в графике, сеть и проч.) которые я собираю время от времени, ориентированные на программиста. Так же присутствуют книги по смежным тематикам, например по языкам програм...