1с получитьсклонениястроки файл не обнаружен

Обновлено: 07.07.2024

ПолучитьСклоненияСтроки(<СклоняемаяСтрока>, <ОписаниеСтроки>, <ФорматнаяСтрока>)
Параметры:

Тип: Строка.
Содержит строку, которую нужно просклонять.
<ОписаниеСтроки> (необязательный)

Тип: Строка.
Содержит информацию о строке, которую требуется просклонять.
Допустимы следующие параметры:
Л (L) - Код локализации. По умолчанию используется код локализации, установленный в операционной системе. Примеры кодов локализации: ru_RU - Русский (Россия); en_US - Английский (США). В настоящий момент поддерживается только русский язык. Если код локализации не указан, то используется текущая локализация пользователя.
ПЛ (GN) - Пол. Параметр используется при склонении имен собственных. Если пол не указан, то платформа пытается распознать его на основании переданного словосочетания. Возможные варианты:
Мужской (Masculine),
Женский (Feminine).

Значение по умолчанию: Пустая строка.
<ФорматнаяСтрока> (необязательный)

Тип: Строка.
Содержит параметры форматирования.
Допустимы следующие параметры:
ПД (CS) – Падеж. Если падеж не указан, то склонение не выполняется (выдается исходная строка). Поддерживаются следующие падежи:
Именительный (Nominative),
Родительный (Genitive),
Дательный (Dative),
Винительный (Accusative),
Творительный (Instrumental),
Предложный (Prepositional).

Значение по умолчанию: Пустая строка.
Возвращаемое значение:

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

Склоняет указанную строку.

Сервер, толстый клиент, внешнее соединение.
Пример:

Результат = ПолучитьСклоненияСтроки("токарь третьего разряда",
,
"ПД=Дательный");
// Результат - массив со строкой "токарю третьего разряда".

Результат = ПолучитьСклоненияСтроки("А. Грин",
"ПЛ=Мужской",
"ПД=Дательный");
// Результат - массив со строкой "А. Грину".

Описание ошибки:
Обнаружена при разработке обработки для изменения содержимого файла формата XML в серверной базе 1С 8 в режиме управляемого приложения. При тестировании на сервере ошибка не возникала. Проявила себя при работе на рабочем месте пользователя.

1С 8 ошибка файл не обнаружен при чтении файла

По факту ошибка возникала при выполнении метода "Прочитать()" для объекта "ТекстовыйДокумент". Как было отмечено, при тестировании работы обработки непосредственно на сервере данной ошибки не возникало. Она проявила себя уже при попытке работы на другом рабочем месте. Обработка разрабатывалась для конфигурации 1С: Комплексная автоматизация 8, ред. 2, которая работает в режиме управляемого приложения - это необходимо отметить. Т.к. это проясняет причины возникновения проблемы.

По привычке разместил операции по чтению содержимого текстового файла и извлечению его содержимого на стороне сервера - см. "&НаСервере" перед процедурой "ОбрабткаНаСервере()". Клиент-серверная архитектура платформы 1С: Предприятие 8.3, казалось бы, к этому обязывала.

1с 8.3 при чтении файла пишет, выводит ошибку: Файл не обнаружен

В итоге получалось, что платформа на клиентском рабочем месте искала файл по указанному пути на сервере, где развернут сервер 1С: Предприятия 8 исходя из директивы "&НаСервере", а не на рабочем компьютере, где была запущена обработка.

Но, как оказалось позже - конструктор "Новый ТекстовыйДокумент", методы "Прочитать()", "ПолучитьТекст()" - все они доступны не только на стороне сервера, но и на стороне тонкого и толстого клиента. Поэтому замена директивы "&НаСервере" на "&НаКлиенте" решила проблему.

В состав актуальных типовых конфигураций входит подсистема «Склонение представлений объектов» Библиотеки стандартных подсистем в 1С (БСП), основное назначение: склонение ФИО в 1С, должностей и прочих наименований (например, номенклатуры).

Состав объектов подсистемы представлен на рисунке:



Рисунок 1. Состав объектов подсистемы (БСП v3.1)

Рассмотрим подробнее, как устроен данный механизм.

Объекты метаданных, для которых доступен механизм склонения, перечислены в свойстве Тип определяемого типа ОбъектСклонения. В демонстрационной конфигурации БСП 8.3 определены следующие типы:



Рисунок 2. Типы объектов склонения

1) Во всех формах элементов, для которых встраивается склонение, в обработчике ПриСозданииНаСервере добавлен фрагмент кода:



Рисунок 3. Фрагмент кода в обработчике ПриСозданииНаСервере

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

2) Во всех формах элементов, для которых встраивается склонение, в обработчике ПриЗаписиНаСервере добавлен фрагмент кода:



Рисунок 4. Фрагмент кода в обработчике ПриЗаписиНаСервере

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

В параметре ПараметрыСклонения необязательно передается структура дополнительных параметров склонения. Для конструирования структуры используется функция ПараметрыСклонения общего модуля СклонениеПредставленийОбъектовКлиентСервер.

3) Во всех формах элементов, для которых встраивается склонение, рядом с реквизитом, который необходимо просклонять, добавлена команда в виде гиперссылки с названием Склонения. Обработчик команды:



Рисунок 5. Фрагмент кода команды Склонения

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

В параметре ПараметрыСклонения не обязательно передается структура дополнительных параметров склонения. Для конструирования структуры используется функция ПараметрыСклонения общего модуля СклонениеПредставленийОбъектовКлиентСервер.

4) Во всех формах элементов, для которых встраивается склонение, в обработчике ПриИзменении реквизита, который должен склоняться, добавлен фрагмент кода:



Рисунок 6. Фрагмент кода в обработчике ПриИзменении

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

В параметре ПараметрыСклонения не обязательно передается структура дополнительных параметров склонения. Для конструирования структуры используется функция ПараметрыСклонения общего модуля СклонениеПредставленийОбъектовКлиентСервер.

Результат склонения записывается в регистр сведений «Склонения представлений объектов». Состав регистра представлен на рисунке:



Рисунок 7. Состав регистра «Склонения представлений объектов»

Измерение ХешПредставления содержит строковый результат вычисления переданного значения Представление по алгоритму MD5, а измерение Объект – значение определяемого типа ОбъектСклонения.

При обращении к методу склонения в 1С первым делом проверяется наличие результата в регистре сведений «Склонения представлений объектов». А склонение выполняется только при отсутствии записи или при вызове специального метода повторного заполнения.
Само же склонение в 1С 8.3 выполняется одним из способов, указанным в настройках подсистемы: через сторонний сервис «Морфер» или внутренний механизм платформы. Метод ПолучитьСклоненияСтроки() - доступен, начиная с версии платформы 8.3.13.

Настройка сервиса «Морфер» осуществляется в разделе «Администрирование – Интернет-поддержка и сервисы – Склонения представлений объектов»:



Рисунок 8. Настройка сервиса "Морфер"

При использовании сервиса рекомендуется выполнить регистрацию и в параметрах указать Токен, генерируемый в личном кабинете. Но стоит иметь в виду, что бесплатный вариант использования сервиса ограничен максимум 100 запросами в сутки.

Внутренний механизм платформы также выполняет склонение в 1С достаточно хорошо и может быть достойной альтернативой платному сервису.

2. Внутренние механизмы платформы

Начиная с версии платформы 8.3.13 был реализован метод ПолучитьСклоненияСтроки().
Указанный метод позволяет правильно «склонять» несклоняемые фамилии. Также он отлично справляется со сложными и иностранными именами. В особо сложных случаях есть возможность дополнительно указать, какой род следует использовать. Метод без ошибок обрабатывает следующие грамматические правила:

· склонение мужских имен, оканчивающихся на гласную;

· склонение женские имен, оканчивающихся на некоторые гласные;

· склонение только второй компоненты в двойных именах;

· склонение фамилий, оканчивающихся на согласный.

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

2.1 Склонение в 1С

В самом простом случае используется только возможность склонения, а числовое значение выводится одними цифрами:



2.2 Склонение количественных и порядковых числительных

Для «придания красоты» итоговому словосочетанию можно в явном виде указать разряд числительного, используемого в предложении: порядковое или количественное. В этом случае платформа самостоятельно добавит к порядковым числительным буквенное падежное окончание:



2.3 Представление числа в 1С

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



2.4 Склонение единиц измерения

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



2.5 Сложные словосочетания примеры

На уровне платформы поддерживается склонение в 1С достаточно сложных синтаксических конструкций: автоматически определяются подлежащие склонению слова и, например, игнорируются фрагменты текста, заключенные в кавычки:

В состав актуальных типовых конфигураций входит подсистема «Склонение представлений объектов» Библиотеки стандартных подсистем в 1С (БСП), основное назначение: склонение ФИО в 1С, должностей и прочих наименований (например, номенклатуры).

Состав объектов подсистемы представлен на рисунке:



Рисунок 1. Состав объектов подсистемы (БСП v3.1)

Рассмотрим подробнее, как устроен данный механизм.

Объекты метаданных, для которых доступен механизм склонения, перечислены в свойстве Тип определяемого типа ОбъектСклонения. В демонстрационной конфигурации БСП 8.3 определены следующие типы:



Рисунок 2. Типы объектов склонения

1) Во всех формах элементов, для которых встраивается склонение, в обработчике ПриСозданииНаСервере добавлен фрагмент кода:



Рисунок 3. Фрагмент кода в обработчике ПриСозданииНаСервере

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

2) Во всех формах элементов, для которых встраивается склонение, в обработчике ПриЗаписиНаСервере добавлен фрагмент кода:



Рисунок 4. Фрагмент кода в обработчике ПриЗаписиНаСервере

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

В параметре ПараметрыСклонения необязательно передается структура дополнительных параметров склонения. Для конструирования структуры используется функция ПараметрыСклонения общего модуля СклонениеПредставленийОбъектовКлиентСервер.

3) Во всех формах элементов, для которых встраивается склонение, рядом с реквизитом, который необходимо просклонять, добавлена команда в виде гиперссылки с названием Склонения. Обработчик команды:



Рисунок 5. Фрагмент кода команды Склонения

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

В параметре ПараметрыСклонения не обязательно передается структура дополнительных параметров склонения. Для конструирования структуры используется функция ПараметрыСклонения общего модуля СклонениеПредставленийОбъектовКлиентСервер.

4) Во всех формах элементов, для которых встраивается склонение, в обработчике ПриИзменении реквизита, который должен склоняться, добавлен фрагмент кода:



Рисунок 6. Фрагмент кода в обработчике ПриИзменении

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

В параметре ПараметрыСклонения не обязательно передается структура дополнительных параметров склонения. Для конструирования структуры используется функция ПараметрыСклонения общего модуля СклонениеПредставленийОбъектовКлиентСервер.

Результат склонения записывается в регистр сведений «Склонения представлений объектов». Состав регистра представлен на рисунке:



Рисунок 7. Состав регистра «Склонения представлений объектов»

Измерение ХешПредставления содержит строковый результат вычисления переданного значения Представление по алгоритму MD5, а измерение Объект – значение определяемого типа ОбъектСклонения.

При обращении к методу склонения в 1С первым делом проверяется наличие результата в регистре сведений «Склонения представлений объектов». А склонение выполняется только при отсутствии записи или при вызове специального метода повторного заполнения.
Само же склонение в 1С 8.3 выполняется одним из способов, указанным в настройках подсистемы: через сторонний сервис «Морфер» или внутренний механизм платформы. Метод ПолучитьСклоненияСтроки() - доступен, начиная с версии платформы 8.3.13.

Настройка сервиса «Морфер» осуществляется в разделе «Администрирование – Интернет-поддержка и сервисы – Склонения представлений объектов»:



Рисунок 8. Настройка сервиса "Морфер"

При использовании сервиса рекомендуется выполнить регистрацию и в параметрах указать Токен, генерируемый в личном кабинете. Но стоит иметь в виду, что бесплатный вариант использования сервиса ограничен максимум 100 запросами в сутки.

Внутренний механизм платформы также выполняет склонение в 1С достаточно хорошо и может быть достойной альтернативой платному сервису.

2. Внутренние механизмы платформы

Начиная с версии платформы 8.3.13 был реализован метод ПолучитьСклоненияСтроки().
Указанный метод позволяет правильно «склонять» несклоняемые фамилии. Также он отлично справляется со сложными и иностранными именами. В особо сложных случаях есть возможность дополнительно указать, какой род следует использовать. Метод без ошибок обрабатывает следующие грамматические правила:

· склонение мужских имен, оканчивающихся на гласную;

· склонение женские имен, оканчивающихся на некоторые гласные;

· склонение только второй компоненты в двойных именах;

· склонение фамилий, оканчивающихся на согласный.

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

2.1 Склонение в 1С

В самом простом случае используется только возможность склонения, а числовое значение выводится одними цифрами:



2.2 Склонение количественных и порядковых числительных

Для «придания красоты» итоговому словосочетанию можно в явном виде указать разряд числительного, используемого в предложении: порядковое или количественное. В этом случае платформа самостоятельно добавит к порядковым числительным буквенное падежное окончание:



2.3 Представление числа в 1С

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



2.4 Склонение единиц измерения

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



2.5 Сложные словосочетания примеры

На уровне платформы поддерживается склонение в 1С достаточно сложных синтаксических конструкций: автоматически определяются подлежащие склонению слова и, например, игнорируются фрагменты текста, заключенные в кавычки:

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