Не производится зачет авансов с покупателями в 1С УНФ 1.6
Выравнивал остатки по взаиморасчетам на начало года в 1С УНФ. Затем думал просто в документах текущего года установлю признак Автоматического зачета авансов и перепроведу документы в надежде, что все долги зачтутся как надо. Но не тут то было. В некоторых случая, в частности рассматривал одну Расходную накладную, аванс никак не хотел зачитываться на дату проведения данной накладной.
Оптимизированный запрос СКД
Как известно, при использовании СКД программа оптимизирует текст запроса и часто это приводит к неожиданным результатам.
Окончательный (оптимизированный) текст запроса можно посмотреть с помощью такого кода:
Проводки для отражения продаж на маркетплейсах
205.31 - 401.10 1000 руб. Продажа в конце месяца по контрагенту Розничный покупатель
201.11 - 205.80 900 руб. Поступили деньги за минусом вознаграждения от контрагента Маркетплейс
109.хх - 302.хх 100 руб. Начислено вознаграждение Маркетплейсу
205.80 - 205.31 1000 руб. Взаимозачет между Розничным покупателем и Маркетплейсом
302.хх - 205.80 100 руб. Взаимозачет между Маркетплейсом и Маркетплейсом
Оптимизация реструктуризации БД
Метод работает только в клиент-серверном варианте
1. На сервере 1С устанавливаем runtime Java 8 (https://java.com/ru/download/). Разрядность Java должна совпадать с разрядностью сервера 1С.
Добавляем в файл C:\Program Files\1cv8\8.3....\bin\conf\conf.cfg строку:
UpdateDBCfg=v2
Само обновление конфигурации в конфигураторе
Конфигурация БД - Обновить конфигурацию БД на сервере.
1с + Apache выдает the requested url was not found on this server
Установил Apache, как положено с правами администратора опубликовал базу, но при открытии в браузере получил такое сообщение: the requested url was not found on this server
Представление документа в СКД
В поле "Выражение по которому вычисляется представление поля" пишем:
ВЫБОР КОГДА Заказ ЕСТЬ NULL ТОГДА "" ИНАЧЕ "Заказ " + ПрефиксацияОбъектовКлиентСервер.НомерНаПечать(Заказ.Номер) + " от " + Формат(Заказ.Дата, "ДФ='дд.ММ.гггг'") КОНЕЦ
Запросы
Иногда тип значения поля заранее не известен и выражение вида:
МАКСИМУМ(ВЫБОР КОГДА ВТ_Свойства.Имя = "Свойство1" ТОГДА ХА_ЗаказДополнительныеРеквизиты.Значение ИНАЧЕ "" КОНЕЦ)
в случае с числовым полем в качестве максимума вернет не максимальное число. После ИНАЧЕ для вычисления максимума по числовому полю обязательно нужно писать 0.
Конец дня в виртуальных таблицах
Виртуальная таблица Остатки() даёт остатки на границу НЕ ВКЛЮЧАЯ.
Таблица ОстаткиИОбороты и Обороты выдаёт данные по границу ВКЛЮЧАЯ
Вариант обхода:
РегистрНакопления.ТоварыНаСкладах.Остатки(ДобавитьКДате(КонецПериода(&КонДата, "День"), "Секунда", 1),)
Особенности СКД
Создаем в запросе таблицу:
- Контрагент
- Договор
- Партия
- Приход
- Расход
- ВЫБОР КОГДА Приход <> 0 И Расход <> 0 ТОГДА 1 ИНАЧЕ 0 КОНЕЦ КАК Оборот
При разных группировках в последнем поле (Оборот) итоги будут отличаться, т.к. последнее поле будет рассчитываться для каждой группировки в отдельности. Если эту таблицу сначала поместить во временную таблицу и там сгруппировать, а потом уже выводить в отчет, то результат будет один и тот же.
Решение:
Строки подключения к базе данных 1С
База на сервере:
Srvr="Server-1C";Ref="Trade2";USR="главный бухгалтер";PWD="111";
Файловая база данных:
File="C:\1CBase";Usr="главный бухгалтер";Pwd="111";