Как поменять разрядность 1с

Обновлено: 07.07.2024

Разрядность результатов выражений и агрегатных функций в языке запросов

При использовании в запросах операций и функций над данными, в определение которых входят спецификации длины ( Строка , Число ) и точности ( Число ), бывает необходимо учитывать правила вычисления длины и точности результатов. Этот раздел содержит описание соответствующих правил.

Операции над строками

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

ПОДСТРОКА(Строка, m, k) Неограниченная длина Длина k, переменная Длина k, переменнаяМИНИМУМ(Строка) Неограниченная длина Длина n, фиксированная Длина n, переменнаяМАКСИМУМ(Строка) Неограниченная длина Длина n, фиксированная Длина n, переменная

В следующей таблице приведены правила определения дополнительных спецификаций результата операции "+" (конкатенация строк), имеющей 2 строковых операнда.

Неограниченная длина Неограниченная длина Неограниченная длина Неограниченная длинаДлина n Фиксированная Неограниченная длина Длина n + m фиксированная Длина n + m переменнаяПеременная Неограниченная длина Длина n + m переменная Длина n + m переменная

Операции над числами

Выполняя различные преобразования числовых данных, необходимо учитывать, что максимальное количество цифр, которое может содержать число (его целая и дробная часть вместе), равно 38 цифр. 1С:Предприятие использует десятичные числа с фиксированной точкой. Это значит, например, что число 34.28 содержит 4 цифры, число 0.00000001 содержит 8 цифр (незначащий 0 перед точкой за цифру не считается), а число 3200000000 содержит 10 цифр. Разрядность результатов различных операций вычисляется так, чтобы по возможности исключить арифметические переполнения, и в то же время максимально сохранить точность значений. При разработке конфигураций выбор разрядности полей объектов метаданных должен определяться возможной разрядностью хранимых в них данных и не должен учитывать возможное увеличение разрядности после выполнения арифметических операций и функций.

"+" (сложение), "-" (вычитание)

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

"*" (умножение)

Операции умножения выполняется точно в том случае, если хотя бы один ее операнд является целым числом. Длина дробной части результата определяется как наибольшая из длин дробных частей операндов, но не менее 8 цифр. Длина целой части результата вычисляется как сумма длин целых частей операндов. Если при этом общее количество цифр целой и дробной части превысит 38, то оно будет приведено к 38.

При умножении двух чисел разрядность результата вычисляется следующим образом: количество разрядов целой части содержит сумму количеств разрядов целых частей операндов; количество разрядов дробной части содержит сумму количеств разрядов дробных частей операндов. Если суммарное количество разрядов (целой и дробной части) результата превышает максимально допустимое (38 - для всех СУБД кроме DB2, для DB2 - 31), то происходит балансировка точности. В этом случае операнды приводятся к разрядности, позволяющей сохранить необходимую точность операции. Например, при умножении полей (не констант) ЧИСЛО(17,4) и ЧИСЛО(27,4) платформа приведет операнды к типу ЧИСЛО(15,4) и ЧИСЛО(22,4), что в результате даст тип ЧИСЛО(37,8), не превышающий максимальное количество разрядов в СУБД. Однако, если какой-либо из операндов не поместится в соответствующую разрядность, то будет ошибка СУБД во время исполнения запроса

"/" (деление)

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

СУММА

Агрегатная функция СУММА вычисляется по возможности точно. Количество цифр дробной части результата равно количеству цифр дробной части операнда. Количество цифр целой части увеличивается на 7 цифр. Если при этом общее количество цифр целой и дробной части превысит 38, то оно будет приведено к 38 за счет уменьшения числа цифр дробной части, но не менее, чем до 8.

МИНИМУМ, МАКСИМУМ, СРЕДНЕЕ

Результат функций МИНИМУМ, МАКСИМУМ, СРЕДНЕЕ имеет такое же количество цифр в целой и дробной частях, как и их операнд.

КОЛИЧЕСТВО, ГОД, КВАРТАЛ, МЕСЯЦ, ДЕНЬГОДА, ДЕНЬ, НЕДЕЛЯ, ДЕНЬНЕДЕЛИ, ЧАС, МИНУТА, СЕКУНДА, РАЗНОСТЬДАТ

Перечисленные функции имеют числовой результат с 10 цифрами в целой части. Дробная часть отсутствует.

Проблемные ситуации

Если при работе запроса возникает ошибка СУБД, следует изменить запрос, приводящий к ошибке: с помощью операции ВЫРАЗИТЬ можно привести разрядность операндов к такому виду, чтобы в результате расчета разрядности умножения платформа 1С:Предприятие не проводила автоматическую балансировку точности.

Например: привести разрядность операндов к типам ЧИСЛО(17,4) и ЧИСЛО(20,4) - в этом случае результатом умножения будет разрядность ЧИСЛО(37,8), что не превышает максимально допустимую разрядность для используемой СУБД.

На компьютере стоят обе платформы одной версии: х32, х64.
В нормальном режиме работы бухгалтер запускает 1С через ярлык, выбирает базу, ну и стартер сам как я понимаю выбирает х64-платформу.

Иногда нужно принудительно запустить х32-платформу.
Ну ясное дело - это для печати штрих-кода.

Как это сделать?
Как настроить, чтобы когда надо бухгалтеру она могла открыть базу в х32-платформе?
Создать другой ярлык?

(2) параметрами запуска
или разный путь к exe Файлу. Тут уже кому на что фантазии хватит
(3)
Вряд ли параметрами запуска это решить, нет таких параметров. Ярлык должен быть напрямую на нужный 1cv8x.exe
(4) А это смотря куда ведет ярлык. Может быть ярлык введет на исполняемый файл (cmd) и вызывая его с параметрами уже запускается та или иная версия 1С
(0) Решили проблему следующим образом.
У разработчиков 64х стоит платформа. У пользователей x86.
Если разработчику нужна x86 то запускает из Programs files(x86).
Ярлыки замучаешься делать при частом обновлении платформы.
(6) не пробовали оставить один каталог и релиз просто потом переписывать поверх ? )))) на сервере по крайней мере
ЗЫ пофиг сколько там новых она создаст, запуск всегда с одного
(8) Ага Особенно когда нужно что б было несколько разных версий платформы одновременно, очень удобно.
(9) ну кому на вкус фломастеры разные . зачем нужно МНОГО разных версий , уж и не знаю ))) как минимум можно на основные конфигурации у которых используется определенная платформа поставить ярлыки, а плодить сущности .
(7)
В том-то и дело, что ярлык с стартеру (1cestart) не помогает. Он всегда ищет последний установленный релиз и запускает из него 1cv8s.exe. Не глядя на архитектуру.
(11) "всегда ищет последний установленный релиз" // Так у автора релиз один и тот же, просто 32б и 64б. Хочешь сказать, что стартер 32б запускает тонкий / толстый клиент 64б?
(12) Да, так и есть.
Если стоят две платформы одной версии, то любой стартер запускает х64-платформу.

(8) У меня есть два ярлыка вечных:

%ProgramFiles% и %CurrentVersion1C% - переменные окружения, там я ставлю версию требующуюся и все переопределяется. Причем, на разных хостах свои версии.

А еще можно апач/iis настроить через environment vars и опубликовать 1 раз все.

Как известно, начиная платформы 1С 8.3, все версии платформы находятся в одном общем каталоге:

  • Для 32-х разрядной версии - «C:\Program Files (x86)\1cv8»
  • Для 64-х разрядной версии - «C:\Program Files\1cv8»

Собственно, в 1С 8.2 они тоже были в одном, только он назывался по другому «1cv82». До 1С 8.2 новая версия платформы устанавливалась поверх старой. Отдельная подпапка для новой версии не создавалась.

Если же установлен сервер 1С Предприятие, его настройки находятся рабочем каталоге сервера, в этой же общей папке в каталоге «srvinfo» (при необходимости можно перенести эти данные в любое другое место). Соответственно, при установке новой версии 8.3, в папке «1cv8» появляется новая подпапка с номером новой версии, а все настройки сервера используются те же, из папки «srvinfo». При этом, не происходит установка нового экземпляра службы сервера.

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

Пример создания новой службы сервера из командной строки:

Однако, если необходимо не только установить новую версию сервера 1С, а, дополнительно перейти с 32-х разрядной версии на 64-х разрядную, путь нахождения программных файлов изменится. Новая версия сервера будет установлена параллельно текущей.

Как известно, журналы регистрации для серверных баз 1С находятся в рабочем каталоге сервера «srvinfo». Соответственно, при переходе на 64-х разрядную версию сервера, будут созданы новые журналы, вместе с новым экземпляром сервера. Информация из старых журналов регистрации будет потеряна. Если данные журналов регистрации часто используются администраторами и пользователями информационных баз, это является проблемой.

Собственно, в этой статье, я даю инструкцию по переходу на 64-х разрядную версию сервера 1С с сохранением данных журналов регистрации информационных баз, которые использовались при работе 32-х разрядной версии сервера.

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

Порядок действий для перехода на 64-х разрядный сервер 1С

Останавливаем и отключаем службу агента 32 разрядного сервера. Это можно сделать из командной строки или из списка рабочих служб сервера:

Список служб

Устанавливаем 1С платформу 64 (сервер и все необходимые компоненты), при установке необходимо не забыть указать пароль для существующего пользователя USR1CV8.

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

Далее пробуем запустить консоль кластера серверов 1С для 64-х разрядной версии. В случае, если консоль не запускается, регистрируем необходимую библиотеку dll:

Или из командной строки:

Выполняем перегрузку сервера (на всякий случай).

Опять запускаем консоль кластера серверов, открываем локальный кластер - список информационных баз пустой:

Пустой список информационных баз

Закрываем консоль кластера и останавливаем службу агента 1С сервера.

Переносим информацию об информационных базах из файлов «1CV8Clst. lst » и «1CV8Clsto. lst », расположенных в рабочем каталоге 32-х разрядного сервера:

C:\Program Files (x86)\1cv8\ srvinfo\reg_1541

в аналогичные файлы в рабочем каталоге 64-х разрядного сервера:

C:\Program Files\1cv8\ srvinfo\reg_1541

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

Рабочий каталог сервера

Заменяемый фрагмент с информационными базами

Далее, переносим все папки из каталога 32-х разрядного сервера:

C:\Program Files (x86)\1cv8\srvinfo\reg_1541

в каталог 64-х разрядного сервера:

C:\Program Files\1cv8\srvinfo\reg_1541

Кроме папки, имя которой начинается с «snccntx» - ее не переносим.

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

Далее, запускаем консоль кластеров 1С x 64 и проверяем наличие всех информационных баз:

Список информационных баз заполненный

Пробуем открыть любую базу на сервере.

Изменение настроек для корректной работы web сервера

Если базы данных опубликованы на web сервере, необходимо изменить его настройки. Рассмотрим на примере использования web сервера IIS .

Меняем исполняемый файл для обработчика «1C Web-service Extension», в разделе «Сопоставление обработчиков» опубликованных информационных баз. Изменяем путь к скрипту «wsisapi.dll», на аналогичный путь из папки «bin» 64-х разрядной версии платформы:

Сопоставление обработчиков IIS

Примечание. В последних версиях платформы 1С 8.3 сопоставление обработчиков изменяется автоматически при перепубликации информационной базы. Необходимости делать это в ручную нет.

Так как разрешения для запуска 32 разрядных расширений уже не нужны, то меняем в настройке IIS:

Настройка разрешения 32 битных приложений

Пулы приложений -> DefaultAppPool -> Дополнительные параметры -> Разрешены 32-разрядные приложения -> на « f alse».

Выполняем повторную публикацию всех информационных баз на web сервере из конфигураторов системы:

Внимание. Для публикации и перепубликации баз данных на web сервере необходимо запускать конфигуратор 1С с правами администратора.

Пробуем открыть информационные базы через web, используя тонкий клиент или браузер.

Спасибо за внимание, если статья оказалась полезной не забывайте поставить звездочку J


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


Способ № 2. Из Главного меню

Уменьшить размер изображения можно по кнопке Главное меню – Вид – Изменить масштаб , где настроить бегунком нужный масштаб отображения.


Результат уменьшения масштаба.

  • 100% масштаб (не помещается полностью на экран);



Мы рассмотрели как увеличить масштаб в 1С 8.3.

См. также:

Если Вы еще не подписаны:

Активировать демо-доступ бесплатно →

или

Оформить подписку на Рубрикатор →

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

Помогла статья?

Получите еще секретный бонус и полный доступ к справочной системе БухЭксперт8 на 14 дней бесплатно

Похожие публикации

    Увеличить шрифт в 1С 8.2 Бухгалтерия до нужного размера можно..В статье 15.33.2 КоАП РФ, по которой наказывают за просроченную.Для правильного формирования бухгалтерских проводок в 1С 8.3 необходимо настроить.

Карточка публикации

(8 оценок, среднее: 5,00 из 5)

Данную публикацию можно обсудить в комментариях ниже.
Обратите внимание! В комментариях наши кураторы не отвечают на вопросы по программам 1С и законодательству.
Задать вопрос нашим специалистам можно по ссылке >>

Все комментарии (3)

Если речь идет об отчете, то можно нажать кнопку Ctrl и покрутить колесико мышки

Добрый день.
Спасибо, за полсказку, она обязательно кому-нибудь пригодится. В статье рассказывается как уменьшить масштаба для всех документов.

Читайте также: