Архив метки: 8.3

Коды ошибок HTTP

При работе с веб-сервисами 1С, в процессе отладки, удобно сразу понимать, в каком месте что-то пошло не так. Если данные через сервис совсем не проходят, обычно можно понять причину в логе веб-сервера. При использовании Apache лог находится в файле \logs\access.log
Нормальный запрос от клиента выглядит примерно так:
46.211.159.63 - - [23/May/2017:11:41:22 +0300] "POST /base/ws/AgentExchange HTTP/1.1" 200 321
В этой строке виден ip адрес клиента, время, имя веб-сервиса “AgentExchange”, код ответа – “200”

Коды ответов при ошибках:
500 – ошибка обращения к веб-сервису, обычно из-за нарушения прав доступа в 1С
401 – ошибка авторизации в 1С

Целое число в запросе

Для округления чисел в запросе необходимо применять функцию ВЫРАЗИТЬ, для отсечения дробной части придется использовать конструкцию ВЫБОР.

Пример округления до целого:

ВЫРАЗИТЬ(ЦеныМагазина.Цена КАК ЧИСЛО(12, 0))

Пример получения целой части (отсечение дробной):

ВЫБОР
КОГДА (ВЫРАЗИТЬ(ЦеныМагазина.Цена КАК ЧИСЛО(12, 0))) > ЦеныМагазина.Цена
ТОГДА (ВЫРАЗИТЬ(ЦеныМагазина.Цена КАК ЧИСЛО(12, 0))) - 1
ИНАЧЕ ВЫРАЗИТЬ(ЦеныМагазина.Цена КАК ЧИСЛО(12, 0))
КОНЕЦ

Конфигурация не соответсвует ожидаемой. Опять

Кроме решения, о котором я писал раньше появилось одно уточнение. Подобная ошибка может появиться в случае использования разных версий платформы на узлах распределенной базы. В моем случае на центральной базе была версия 8.3.4, а периферийную базу обновили до 8.3.6. Решается без каких-либо манипуляций простым обновлением баз до одинаковой версии.

Конфигурация не соответствует ожидаемой

Если во время обмена между распределенными базами на периферийной базе возникает ошибка “Конфигурация не соответствует ожидаемой” и обмен не загружается, нужно выполнить следующие действия:

  • Сделать выгрузку конфигурации на центральной базе, это та конфигурация, которую ожидает периферийная база и которую нужно будет туда загрузить.
  • На периферийной базе – отключить от главного узла обмена. Это возможно программно, для этого нужно написать обработку с одной командой: ПланыОбмена.УстановитьГлавныйУзел(Неопределено);
  • Конфигурацию периферийной базы нужно снять с поддержки, если это включено, затем объединить с конфигурацией из центральной базы, а затем выполнить загрузку конфигурации из этого-же файла. Я делаю так для того чтобы перенести признак поддержки.
  • Вернуть привязку к главному узлу обмена. Это снова можно сделать программно, только теперь нужно будет указать узел, который будет назначен главным: ПланыОбмена.УстановитьГлавныйУзел(ТекущийУзел); В переменную ТекущийУзел нужно передать элемент из плана обмена, его можно сделать полем выбора в форме обработки.
  • &nbsp

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

    Простой учет 8.5.6

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

    Из прочего: отлажена работа документа “Банковская выписка”, доступны все операции как и в кассовых ордерах, при проведении формируются соотвествующие движения в регистрах. Суммы оплат по банку видны в списке счетов покупателям при условии, что в выписке указан документ-основание.

    Простой учет 8.0.2

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

    Простой учет 7.11.7

    В документе Инвентаризация товаров добавлен алгоритм очистки остатков от партий с отрицательным количеством. При рассчете списания создаются дополнительные проводки: сторно минусовой партии и списание этого-же количества из “нормальной” партии по правилу FIFO. Проводки формируются только по товарам, которые на момент инвентаризации имеют положительный общий остаток.

    Простой учет 7.11.5

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

    Простой учет 7.10.3

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

    Проверка заполненности реквизита

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