пятница, 5 июня 2015 г.

Функция вычисления длительности выполнения процесса

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


понедельник, 1 июня 2015 г.

Версионирование объектов в 1С

Версионирование представляет собой опцию, с помощью которой пользователь может легко установить, кто и когда изменил находящийся в базе документ, а также какие именно изменения имели место. Платформа 1С:Предприятие 8 имеет сходную опцию – журнал регистрации, однако эта опция не позволяет выяснить характер изменений, журнал регистраций позволяет только узнать, когда был изменен документ и какой пользователь внес изменения.
Механизм версионирования позволяет хранить не только даты и автора изменений, но и историю изменений документа, опция позволяет просматривать различные версии состояния одного и того же документа. Чтобы использовать данную опцию, необходимо предварительно провести настройку версионирования объектов. Как настройку, так и просмотр всех состояний документа может проводить администратор системы.
В программе "Управление торговлей 11" присутствует отличная возможность для просмотра истории изменений справочников и документов под названием "Версионирование объектов". Давайте же рассмотрим как она работает.
Для включения использования этого функционала перейдем на закладку программы "Администрирование" пункт "Поддержка и обслуживание" и установим галочку "Версионирование объектов".

воскресенье, 31 мая 2015 г.

пятница, 29 мая 2015 г.

среда, 27 мая 2015 г.

понедельник, 25 мая 2015 г.

среда, 3 сентября 2014 г.

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

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

Первое что необходимо сделать создать параметр "Ошибки" в правиле конвертации.
Это простая ТЗ, в которой мы будем собирать ошибки(сообщения) и выводитьпосле обмена именно уникальные сообщения (предварительно свернув таблицу ошибок) .
Инициализируем параметр в обработчике "Перед загрузкой данных"
Параметры.Ошибки=Новый ТаблицаЗначений();
Параметры.Ошибки.Колонки.Добавить("Ошибка");

Сообщение при закрытии кассовой смены: "Не удалось удалить чеки ККМ"

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

понедельник, 2 июня 2014 г.

Решение проблемы с разрывом страницы в налоговой накладной в УПП, УТП и Бухгалтерии

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

вторник, 20 мая 2014 г.

воскресенье, 11 мая 2014 г.

среда, 7 мая 2014 г.

среда, 30 апреля 2014 г.

понедельник, 28 апреля 2014 г.

Не работает поиск по дате в конвертации данных

Нашел особенность в переносе документов в конвертации данных: нужно было перенести документ "Реализация товаров и услуг" из УПП в Бухгалтерию, поля поиска у документа были установлены "Номер" и "Дата", поиск по внутреннему идентификатору не использовался. Ничего, вроде, сложного, но есть один нюанс: когда после переноса я поменял дату в базе-источнике (УПП) и попытался перенести ее в базу-источник (Бухгалтерия), то новый документ почему-то не создался (хотя должен был), в нем лишь поменялась дата на новую, которую я установил.
Пришлось анализировать код обработки "Универсальный обмен данными XML", т.к. коллега подсказал, что дело может быть в методе НайтиПоНомеру(), который используется в обработке для поиска документов по их номеру. Здесь есть нюанс в этого метода: поиск будет идти не с проверкой даты на равенство (ДатаВремя1 = ДатаВремя2), а вхождением в интервал(ДатаНач <= ДатаВремя1 <= ДатаКон). Сам интервал определяется как период уникальности номеров документа, в который входит указанная дата. Например, если номера документов уникальны в пределах месяца и задана дата 10 декабря 2001 года, то поиск будет проводиться в интервале с 01 по 31 декабря 2001 года.
В модуле обработки "Универсальный обмен данными XML" нашел такую функцию для поиска документов:

воскресенье, 27 апреля 2014 г.

среда, 23 апреля 2014 г.

Константы

На следующей схеме изображено взаимодействие объектов встроенного языка для работы с константами.

Что означает ОбменДанными.Загрузка = Истина

ОбменДанными.Загрузка – атрибут любого объекта в системе 1С предприятие. Он позволяет обозначить при записи объекта что необходимо отключить любые проверки (в т.ч проверки на уровне платформы 1С). Сделано это было для того, что бы избежать конфликтов при обмене данных.
Если вы разрабатываете свою конфигурацию, в всех проверках правильности данных (например, процедура ПередЗаписью) необходимо первой строкой добавить такую строку:

Если ОбменДанными.Загрузка = Истина Тогда
    Возврат;
КонецЕсли;

Список значений в качестве параметра в СКД

Включить возможность использовать список значений в качестве параметра в СКД можно посредством установки флажка "Доступен список значений" напротив параметра на закладке "Параметры".