Поиск по блогу

вторник, 11 августа 2015 г.

Получение старого значения реквизита в момент записи объекта или OLD

Реляционные системы управления базами данных, такие как InterBase или FireBird, в своих триггерах поддерживают контекстные переменный NEW и OLD. Контекстная переменная NEW содержит новые значения записи, а вот переменная OLD содержит старые значения записи, следовательно, при обновлении записи (допустим BEFORE UPDATE) разработчик имеет доступ к записи до её обновления и после.

Стоит заметить что переменные OLD и NEW доступны не во всех типах триггера. Платформа 1С так же позволяет разработчику иметь доступ к старым значениям реквизита (до обновления) и одновременно к новым значениям реквизита (после обновления), но при одном условии, разработчик должен использовать события перед записью!

Допустим, у нас имеется справочник Договоры, у которого имеется реквизит ДатаПодписания. Что бы сравнить старое и новое значение реквизита, воспользуемся событием модуля объекта ПередЗаписью. Далее два варианта развития события.

1. Выполнить явный запрос

Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Договоры.ДатаПодписания КАК ДатаПодписанияСтароеЗначение
|ИЗ
| Справочник.Договоры КАК Договоры
|ГДЕ
| Договоры.Ссылка = &Ссылка";

Запрос.УстановитьПараметр("Ссылка", ЭтотОбъект.Ссылка);

Результат = Запрос.Выполнить();

ВыборкаДетальныеЗаписи = Результат.Выбрать();

Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
Если ЭтотОбъект.ДатаПодписания = ВыборкаДетальныеЗаписи.ДатаПодписанияСтароеЗначение Тогда
// Вставить обработку
КонецЕсли;
КонецЦикла;

понедельник, 10 августа 2015 г.

Рекомендации по настройке и использованию веб-браузера Mozilla Firefox

Рекомендации по настройке и использованию веб-браузера корпорации добра (Google Chrome)
Рекомендации по настройке и использованию веб-браузера Internet Explorer

Особенности использования


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

Настройки использования веб-браузера


Для подключения к информационным базам 1С:Предприятия 8 с помощью Mozilla Firefox нужно выполнить следующие настройки:

  • Откройте браузер, в меню Инструменты (Tools) выберите пункт Настройки (Options);
  • В открывшемся окне перейдите в раздел Содержимое (Content):
    - Снимите флажок Блокировать всплывающие окна (Block pop-up windows);
    - Установите флажок Использовать JavaScript (Enable JavaScript).
  • Перейдите в раздел Приватность (Privacy) установите следующие настройки:
    - Установите флажок Принимать cookies с сайтов (Assept cookies from sites);
    - Для детальной настройки приема или отклонения cookies щелкните кнопку Исключения (Exeptions) и следуйте пояснениям диалога настройки.

вторник, 4 августа 2015 г.

Выполнение POST-запроса по протоколу HTTPS на платформе 8.2 на примере Yandex.API

Выполнение POST-запроса на примере Yandex.API
Выполнение GET-запроса на примере Яндекс.API

Теперь сервис Яндекс.Геокодер работает по протоколу HTTPS (расширенная версия протокола HTTP, который поддерживает шифрование). Вызов принят, 1С вызываю тебя!

Танцы с бубном вокруг файла cacert.pem


Что бы с помощью платформы 1С выполнить HTTPS-запрос методом POST, необходимо в файл cacert.pem добавить информацию о корневом сертификате сервиса, на который выполняется запрос, иначе запрос будет завершаться ошибкой:
Peer certificate cannot be authenticated with known CA certificates

Если же платформа 1С содержит информацию о корневом сертификате, то ничего настраивать не нужно, все будет успешно выполняться.

Добавление информации о корневом сертификате


Важно! Все сертификаты из цепочки необходимо добавлять в файл cacert.pem

1. Скачать подходящий дистрибутив с сайта Win32OpenSSL, например, для 64 разрядной ОС Win64OpenSSL_light последней версии.