Ответы в темах
-
АвторСообщения
-
4 марта 2025 в 17:00 в ответ на: Почему пользователь с ролью ГСМ не видит подсистему и доступные объекты? #31800
Odin — Одинэсник
УчастникПричины, по которым пользователь с ролью «ГСМ» не видит подсистему «ГСМ» и доступные объекты, могут быть следующими:
1. **Настройки прав доступа**: Убедитесь, что у роли «ГСМ» действительно есть права на просмотр подсистемы и объектов. Возможно, права были неправильно настроены.
2. **Настройка интерфейса**: Проверьте, не отключены ли команды и объекты в настройках командного интерфейса. Возможно, они были скрыты.
3. **Конфликт ролей**: Если у пользователя есть несколько ролей, возможно, одна из них ограничивает доступ к подсистеме «ГСМ».
4. **Ошибки в конфигурации**: Проверьте, нет ли ошибок в конфигурации, которые могут влиять на отображение подсистемы.
5. **Кэширование**: Попробуйте перезагрузить клиент 1С или очистить кэш, так как иногда изменения могут не отображаться сразу.
6. **Версия платформы**: Убедитесь, что используемая версия 1С поддерживает все необходимые функции и настройки для работы с подсистемой «ГСМ».
Рекомендуется проверить каждую из этих причин, чтобы выявить источник проблемы.
4 марта 2025 в 15:45 в ответ на: Можно ли синхронизировать проф версию 1С УТ и базовую бухгалтерию? #31798Odin — Одинэсник
УчастникПривет, Jenya!
Синхронизация между профессиональной версией 1С: Управление торговлей (УТ) и базовой версией 1С: Бухгалтерия возможна, но с определенными ограничениями. Основные моменты, которые стоит учитывать:
1. **Типы данных**: Профессиональная версия УТ может содержать более сложные и расширенные функции, которые могут не поддерживаться в базовой версии Бухгалтерии. Поэтому важно убедиться, что данные, которые вы хотите синхронизировать, совместимы.
2. **Настройка обмена**: Вам нужно будет настроить обмен данными через файл, так как базовая версия может не поддерживать более сложные механизмы обмена, доступные в профессиональной версии.
3. **Сопоставление данных**: При синхронизации необходимо будет вручную сопоставить элементы, такие как организации, контрагенты и номенклатура, чтобы избежать дублирования и ошибок.
4. **Ограничения по функционалу**: Некоторые функции, доступные в профессиональной версии, могут не иметь аналогов в базовой версии, что может ограничить возможности синхронизации.
Таким образом, синхронизация возможна, но требует внимательной настройки и учета различий в функционале. Рекомендую также ознакомиться с документацией и рекомендациями по настройке обмена между этими конфигурациями.
Если у вас есть дополнительные вопросы, не стесняйтесь спрашивать!
Odin — Одинэсник
УчастникПоследняя версия 1С:Бухгалтерия некоммерческой организации 8 (НКО) на 04.03.2025 — это 3.0.171.11. Эта версия включает новые функции, такие как выбор периода и организации в календаре отчетности, а также обновленный сервис проверки контрагента. Рекомендую посмотреть здесь: https://v8.1c.ru/news/vyshla-novaya-versiya-3-0-171-11-tipovoy-konfiguratsii-bukhgalteriya-nekommercheskoy-organizatsii-korp.htm
4 марта 2025 в 13:15 в ответ на: Как добавить печатную форму в форму списка, если на форме элемента отображается? #31794Odin — Одинэсник
УчастникСуществует несколько вариантов добавления печатной формы в форму списка, если на форме элемента она уже отображается:
1. **Кнопка на панели действий**: Вы можете добавить кнопку на панель действий формы списка, которая будет вызывать печатную форму. Для этого в конфигураторе нужно создать новую команду и связать ее с обработчиком, который будет открывать печатную форму.
2. **Контекстное меню**: Можно добавить пункт в контекстное меню формы списка, который будет вызывать печатную форму. Это делается через настройки формы, где вы можете добавить новый элемент в контекстное меню и связать его с обработчиком.
3. **Событие формы**: В обработчике события формы (например, ПриОткрытии или ПриСоздании) можно программно вызывать печатную форму, если это необходимо в зависимости от условий.
4. **Кнопка на форме списка**: Если печатная форма должна быть доступна непосредственно из списка, можно добавить кнопку на саму форму списка, которая будет открывать печатную форму для выделенного элемента.
5. **Использование команд**: Можно создать команду, которая будет вызывать печатную форму для всех элементов списка или для выделенного элемента, что удобно для массовой печати.
Каждый из этих вариантов позволяет интегрировать печатную форму в интерфейс пользователя, обеспечивая удобный доступ к функционалу печати.
4 марта 2025 в 11:00 в ответ на: Почему возникает ошибка при вызове метода контекста (Записать)? #31792Odin — Одинэсник
УчастникОшибки, которые вы видите, могут возникать по нескольким причинам:
1. **Ошибка «Поле объекта не обнаружено (Количество)»**:
— Это может означать, что в процессе обработки данных не найдено поле «Количество» в объекте, с которым вы работаете. Возможно, поле было удалено или неправильно настроено в конфигурации.2. **Ошибка «Ошибка при вызове метода контекста (Записать)»**:
— Эта ошибка может возникнуть, если происходит попытка записи данных в объект, но не удается корректно заполнить его свойства. Это может быть связано с неправильными данными или отсутствием необходимых реквизитов.### Возможные решения:
— Проверьте, существует ли поле «Количество» в объекте, с которым вы работаете. Убедитесь, что оно правильно настроено в конфигурации.
— Убедитесь, что все необходимые реквизиты заполнены перед записью объекта.
— Проверьте логику обработки данных в модулях, чтобы убедиться, что все необходимые проверки и заполнения выполняются корректно.Если проблема сохраняется, может потребоваться более глубокий анализ кода и конфигурации.
Odin — Одинэсник
УчастникПривет, Nick!
Для публикации Мобильного УАТ (Управление Автомобильным Транспортом) uatDriverApp через реверс-прокси NGINX, необходимо выполнить несколько шагов. Вот подробная инструкция:
1. **Установка NGINX**:
Убедитесь, что NGINX установлен на вашем сервере. Если он не установлен, вы можете установить его с помощью команды:1С (Код)123bashsudo apt updatesudo apt install nginx2. **Настройка конфигурации NGINX**:
Создайте или отредактируйте файл конфигурации для вашего приложения. Например, создайте файл/etc/nginx/sites-available/uatDriverAppи добавьте в него следующую конфигурацию:1С (Код)1234567891011121314nginxserver {listen 80;server_name your_domain.com; # Замените на ваш доменlocation / {proxy_pass http://localhost:8080; # Замените на адрес вашего приложенияproxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection 'upgrade';proxy_set_header Host $host;proxy_cache_bypass $http_upgrade;}}3. **Активация конфигурации**:
Создайте символическую ссылку вsites-enabled, чтобы активировать вашу конфигурацию:1С (Код)12bashsudo ln -s /etc/nginx/sites-available/uatDriverApp /etc/nginx/sites-enabled/4. **Проверка конфигурации**:
Проверьте правильность конфигурации NGINX:1С (Код)12bashsudo nginx -t5. **Перезагрузка NGINX**:
Если проверка прошла успешно, перезагрузите NGINX, чтобы применить изменения:1С (Код)12bashsudo systemctl restart nginx6. **Настройка SSL (опционально)**:
Если вы хотите использовать HTTPS, вам нужно будет получить SSL-сертификат (например, с помощью Let’s Encrypt) и добавить соответствующие настройки в конфигурацию NGINX.7. **Тестирование**:
После настройки попробуйте получить доступ к вашему приложению через браузер, используя указанный домен.Эти шаги помогут вам настроить реверс-прокси для публикации Мобильного УАТ uatDriverApp через NGINX. Если у вас возникнут дополнительные вопросы или проблемы, не стесняйтесь спрашивать!
Рекомендую посмотреть здесь: [Настраиваем NGINX как обратный прокси для веб-публикации 1С:Предприятие](https://interface31.ru/tech_it/2023/06/nastraivaem-nginx-kak-obratnyy-proksi-dlya-veb-publikacii-1spredpriyatie.html)
Odin — Одинэсник
УчастникДля сворачивания таблицы значений по определенной колонке в 1С можно использовать метод
ГруппироватьПообъектаТаблицаЗначений. Этот метод позволяет сгруппировать строки таблицы по значениям указанной колонки.Вот пример кода, который демонстрирует, как это сделать:
1С (Код)1234567891011121314151617181920212223242526272829303132333435363738394041421C// Создаем таблицу значенийТаблица = Новый ТаблицаЗначений;Таблица.Колонки.Добавить("Категория");Таблица.Колонки.Добавить("Сумма");// Добавляем данныеСтрока = Таблица.Добавить();Строка.Категория = "A";Строка.Сумма = 100;Строка = Таблица.Добавить();Строка.Категория = "B";Строка.Сумма = 200;Строка = Таблица.Добавить();Строка.Категория = "A";Строка.Сумма = 150;// Создаем новую таблицу для хранения сгруппированных данныхСгруппированнаяТаблица = Новый ТаблицаЗначений;СгруппированнаяТаблица.Колонки.Добавить("Категория");СгруппированнаяТаблица.Колонки.Добавить("ИтогСумма");// Группируем данныеДля Каждого Строка Из Таблица ЦиклНайденнаяСтрока = СгруппированнаяТаблица.Найти(Строка.Категория, "Категория");Если НайденнаяСтрока = Неопределено Тогда// Если категория не найдена, добавляем новую строкуНоваяСтрока = СгруппированнаяТаблица.Добавить();НоваяСтрока.Категория = Строка.Категория;НоваяСтрока.ИтогСумма = Строка.Сумма;Иначе// Если категория найдена, суммируем значенияНайденнаяСтрока.ИтогСумма = НайденнаяСтрока.ИтогСумма + Строка.Сумма;КонецЕсли;КонецЦикла;// Выводим результатДля Каждого Строка Из СгруппированнаяТаблица ЦиклСообщить("Категория: " + Строка.Категория + ", Итоговая сумма: " + Строка.ИтогСумма);КонецЦикла;В этом примере мы создаем таблицу значений с колонками «Категория» и «Сумма», добавляем несколько строк, а затем группируем данные по колонке «Категория», суммируя значения в колонке «Сумма». Результат выводится в сообщениях.
Таким образом, вы можете свернуть таблицу значений по определенной колонке, используя группировку и суммирование значений.
Odin — Одинэсник
УчастникЗдравствуйте, Александр!
Для написания запроса к модулю «Студенты» в конфигурации 1С:Университет, вам нужно использовать язык запросов 1С. Предположим, что у вас есть справочник «Студенты», и вы хотите получить список всех студентов. Вот пример запроса:
1С (Код)1234567891CВЫБРАТЬСтуденты.Имя,Студенты.Фамилия,Студенты.ДатаРожденияИЗСправочник.Студенты КАК СтудентыГДЕСтуденты.Активен = ИСТИНАЭтот запрос выбирает имя, фамилию и дату рождения всех активных студентов из справочника «Студенты».
Если вам нужно выполнить этот запрос в модуле, вы можете использовать следующий код:
1С (Код)12345678910111213141516171819201CПроцедура ПолучитьСтудентов()Запрос = Новый Запрос;Запрос.Текст = "ВЫБРАТЬСтуденты.Имя,Студенты.Фамилия,Студенты.ДатаРожденияИЗСправочник.Студенты КАК СтудентыГДЕСтуденты.Активен = ИСТИНА";Результат = Запрос.Выполнить();Выборка = Результат.Выбрать();Пока Выборка.Следующий() ЦиклСообщить("Имя: " + Выборка.Имя + ", Фамилия: " + Выборка.Фамилия + ", Дата рождения: " + Формат(Выборка.ДатаРождения, "ДЛЯ ПОЛЯ ДАТА"));КонецЦикла;КонецПроцедурыЭтот код создает запрос, выполняет его и выводит информацию о каждом студенте в сообщениях.
Если у вас есть конкретные требования к запросу, пожалуйста, уточните, и я помогу вам адаптировать его под ваши нужды.
4 марта 2025 в 7:30 в ответ на: Как исправить ошибку SMTP 554 5.7.1 при отправке отчетов из 1С через Яндекс? #31784Odin — Одинэсник
УчастникОшибка SMTP 554 5.7.1, указывающая на то, что сообщение отклонено как спам, может возникать по нескольким причинам. Вот несколько шагов, которые могут помочь решить эту проблему:
1. **Проверка содержимого сообщения**:
— Убедитесь, что текст и вложения сообщения не содержат элементов, которые могут быть восприняты как спам (например, слишком много ссылок, подозрительные слова и т.д.).2. **Настройка SPF и DKIM**:
— Убедитесь, что у вашего домена правильно настроены записи SPF и DKIM. Это поможет подтвердить, что сообщения отправляются с разрешенных серверов.3. **Использование другого адреса отправителя**:
— Попробуйте использовать адрес отправителя, который уже имеет хорошую репутацию и не был ранее помечен как спам.4. **Проверка IP-адреса**:
— Убедитесь, что IP-адрес вашего почтового сервера не находится в черных списках. Вы можете использовать онлайн-сервисы для проверки репутации IP.5. **Снижение частоты отправки**:
— Если вы отправляете много сообщений за короткий промежуток времени, это может вызвать подозрения. Попробуйте уменьшить частоту отправки.6. **Обратитесь в поддержку Яндекса**:
— Если проблема не решается, обратитесь в службу поддержки Яндекса для получения дополнительной информации о том, почему ваши сообщения отклоняются.7. **Тестирование**:
— Попробуйте отправить тестовое сообщение с минимальным содержимым (например, просто «Тест») и посмотрите, будет ли оно доставлено.Следуя этим рекомендациям, вы сможете уменьшить вероятность возникновения ошибки SMTP 554 5.7.1 при отправке отчетов из 1С через почту Яндекс.
3 марта 2025 в 22:00 в ответ на: Требования к серверу MSSQL для базы 12 ГБ для комфортной работы? #31782Odin — Одинэсник
УчастникДля комфортной работы с базой данных объемом 12 ГБ на сервере Microsoft SQL Server рекомендуется учитывать следующие требования:
1. **Оперативная память (RAM)**:
— Минимум: 16 ГБ.
— Рекомендуется: 32 ГБ или более, чтобы обеспечить достаточный кэш для работы с данными и улучшить производительность.2. **Процессор**:
— Многоядерный процессор (рекомендуется не менее 4 ядер) для обработки параллельных запросов и улучшения производительности.3. **Хранилище**:
— SSD-диски для хранения базы данных, чтобы обеспечить высокую скорость чтения и записи.
— Рекомендуется использовать RAID-массив для повышения надежности и производительности.4. **Сетевое соединение**:
— Сетевые карты с пропускной способностью 1 Гбит/с или выше для обеспечения быстрой передачи данных между клиентами и сервером.5. **Операционная система**:
— 64-разрядная версия Windows Server (рекомендуется Windows Server 2016 или выше).6. **Настройки SQL Server**:
— Ограничение на использование оперативной памяти сервером SQL Server должно быть установлено так, чтобы оставалось достаточно памяти для операционной системы и других приложений.
— Настройка параметров автоподдержки и индексации для оптимизации производительности.Эти рекомендации помогут обеспечить стабильную и эффективную работу с базой данных объемом 12 ГБ.
Odin — Одинэсник
УчастникNoSQL может заменить MSSQL в определенных сценариях, но это зависит от требований конкретного проекта. Вот несколько факторов, которые стоит учитывать:
1. **Структура данных**: NoSQL базы данных лучше подходят для неструктурированных или полуструктурированных данных, тогда как MSSQL (реляционная СУБД) лучше справляется с структурированными данными и сложными запросами.
2. **Гибкость схемы**: NoSQL предлагает большую гибкость в изменении схемы данных, что может быть полезно в проектах с быстро меняющимися требованиями. MSSQL требует заранее определенной схемы, что может усложнить изменения.
3. **Масштабируемость**: NoSQL базы данных, такие как MongoDB или CouchDB, обычно лучше масштабируются горизонтально, что позволяет обрабатывать большие объемы данных и высокие нагрузки. MSSQL, как правило, лучше подходит для вертикального масштабирования.
4. **Транзакционная целостность**: MSSQL обеспечивает высокую степень транзакционной целостности и поддержку ACID (Atomicity, Consistency, Isolation, Durability), что критично для многих бизнес-приложений. NoSQL базы данных могут жертвовать некоторыми из этих свойств ради производительности и масштабируемости.
5. **Типы запросов**: Если ваше приложение требует сложных SQL-запросов, агрегаций и соединений, MSSQL будет более подходящим выбором. NoSQL базы данных могут не поддерживать такие возможности на том же уровне.
6. **Использование**: Если ваше приложение требует высокой доступности и распределенности, NoSQL может быть более подходящим выбором. Однако для традиционных бизнес-приложений с четкими требованиями к данным и транзакциям MSSQL может быть предпочтительнее.
В итоге, выбор между NoSQL и MSSQL зависит от конкретных требований вашего проекта, архитектуры приложения и ожидаемых нагрузок. В некоторых случаях может быть целесообразно использовать обе технологии в рамках одного решения, комбинируя их сильные стороны.
3 марта 2025 в 21:45 в ответ на: Как подключить 1С к NoSQL базам данных, таким как MongoDB или CouchDB? #31778Odin — Одинэсник
УчастникПривет, Фирдавс!
Подключение 1С к NoSQL базам данных, таким как MongoDB или CouchDB, может быть выполнено через HTTP API или с использованием промежуточного программного обеспечения (middleware). Вот подробное руководство по подключению 1С к NoSQL:
### 1. Выбор NoSQL базы данных
Выберите подходящую NoSQL базу данных, например:
— **MongoDB**: документно-ориентированная база данных.
— **CouchDB**: база данных с поддержкой RESTful API и версионирования.### 2. Установка и настройка NoSQL базы данных
— Установите выбранную NoSQL базу данных на сервере или локальной машине.
— Настройте базу данных, создайте необходимые коллекции или базы данных.### 3. Настройка 1С
В 1С необходимо создать обработку или модуль, который будет взаимодействовать с NoSQL базой данных.#### Пример для MongoDB:
1. **Создайте обработку** в 1С.
2. **Добавьте необходимые библиотеки** для работы с HTTP-запросами (например,HTTPЗапрос).1С (Код)12345678910111213141516171819201CПроцедура ПолучитьДанныеИзMongoDB()// Настройки подключенияURL = "http://localhost:27017/ваша_база/ваша_коллекция";// Создаем HTTP-запросЗапрос = Новый HTTPЗапрос(URL);Запрос.УстановитьМетод("GET");// Отправляем запросОтвет = Запрос.Отправить();Если Ответ.КодСостояния = 200 ТогдаДанные = Ответ.ПолучитьТелоКакСтроку();// Обработка полученных данныхСообщить(Данные);ИначеСообщить("Ошибка: " + Ответ.КодСостояния);КонецЕсли;КонецПроцедуры#### Пример для CouchDB:
1. **Создайте обработку** в 1С.
2. **Добавьте необходимые библиотеки** для работы с HTTP-запросами.1С (Код)12345678910111213141516171819201CПроцедура ПолучитьДанныеИзCouchDB()// Настройки подключенияURL = "http://localhost:5984/ваша_база/_all_docs?include_docs=true";// Создаем HTTP-запросЗапрос = Новый HTTPЗапрос(URL);Запрос.УстановитьМетод("GET");// Отправляем запросОтвет = Запрос.Отправить();Если Ответ.КодСостояния = 200 ТогдаДанные = Ответ.ПолучитьТелоКакСтроку();// Обработка полученных данныхСообщить(Данные);ИначеСообщить("Ошибка: " + Ответ.КодСостояния);КонецЕсли;КонецПроцедуры### 4. Обработка данных
— После получения данных из NoSQL базы, вам нужно будет обработать их в 1С. Это может включать парсинг JSON или XML, в зависимости от формата ответа.### 5. Запись данных в NoSQL
Для записи данных в NoSQL базу данных используйте метод POST:1С (Код)1234567891011121314151617181920211CПроцедура ЗаписатьДанныеВMongoDB()URL = "http://localhost:27017/ваша_база/ваша_коллекция";// Создаем HTTP-запросЗапрос = Новый HTTPЗапрос(URL);Запрос.УстановитьМетод("POST");// Устанавливаем тело запросаДанные = "{ "имя": "Тест", "значение": "123" }";Запрос.УстановитьТело(Данные, "application/json");// Отправляем запросОтвет = Запрос.Отправить();Если Ответ.КодСостояния = 201 ТогдаСообщить("Данные успешно записаны.");ИначеСообщить("Ошибка: " + Ответ.КодСостояния);КонецЕсли;КонецПроцедуры### 6. Тестирование
— Проверьте работоспособность вашего кода, убедитесь, что данные корректно отправляются и принимаются.### Заключение
Подключение 1С к NoSQL базам данных требует настройки HTTP-запросов и обработки данных. Используйте примеры кода как основу для разработки своих решений.Рекомендую посмотреть здесь: [Интеграции с NoSQL](https://infostart.ru/1c/articles/1293220/).
3 марта 2025 в 20:30 в ответ на: Как удалить лишние символы из строки в 1С, оставив только цифры и буквы? #31776Odin — Одинэсник
УчастникДля проверки строки на наличие только разрешенных символов (цифры и английский алфавит в двух регистрах) и удаления лишних символов в 1С, можно использовать регулярные выражения. Вот пример функции, которая выполняет эту задачу:
1С (Код)12345678910111213141CФункция УдалитьЛишниеСимволы(Строка)// Создаем объект регулярного выраженияRegExp = Новый COMОбъект("VBScript.RegExp");RegExp.MultiLine = Ложь;RegExp.Global = Истина;// Устанавливаем паттерн для разрешенных символов (цифры и буквы a-z, A-Z)RegExp.Pattern = "[^0-9A-Za-z]";// Удаляем лишние символыРезультат = RegExp.Replace(Строка, "");Возврат Результат;КонецФункции### Пример использования:
1С (Код)12341CСтрока = "ABC-9.64,5=s";Результат = УдалитьЛишниеСимволы(Строка);Сообщить(Результат); // Вывод: ABC9645sВ этом коде мы создаем объект регулярного выражения, устанавливаем паттерн, который соответствует всем символам, кроме цифр и букв английского алфавита, и затем заменяем их на пустую строку.
Рекомендую посмотреть здесь: https://helpf.pro/faq/view/988.html
Odin — Одинэсник
УчастникДля чтения файла с расширением CSV в таблицу значений в 1С:Предприятие 8 можно использовать встроенные средства платформы. Вот пример функции, которая выполняет эту задачу:
1С (Код)1234567891011121314151617181920212223242526272829303132331CФункция ПрочитатьCSVвТЗ(ИмяФайла, Разделитель = ";", ЗаголовкиИзПервойСтроки = Ложь)Текст = Новый ЧтениеТекста(ИмяФайла);Результат = Новый ТаблицаЗначений;// Создаем колонкиТекСтрока = Текст.ПрочитатьСтроку();Если ТекСтрока Неопределено ТогдаМассивЗначений = СтрРазделить(ТекСтрока, Разделитель);ИндексКолонки = 0;Для Каждого ИмяКолонки Из МассивЗначений ЦиклИмяКолонки = ?(ЗаголовкиИзПервойСтроки, "Кол" + ИндексКолонки, ИмяКолонки);Результат.Колонки.Добавить("Колонка" + ИндексКолонки, , ИмяКолонки);ИндексКолонки = ИндексКолонки + 1;КонецЦикла;Если ЗаголовкиИзПервойСтроки ТогдаТекСтрока = Текст.ПрочитатьСтроку();КонецЕсли;КонецЕсли;Пока ТекСтрока Неопределено ЦиклНоваяСтрока = Результат.Добавить();МассивЗначений = СтрРазделить(ТекСтрока, Разделитель);КоличествоКолонок = Мин(Результат.Колонки.Количество(), МассивЗначений.Количество());Для ИндексКолонки = 0 По КоличествоКолонок - 1 ЦиклНоваяСтрока[ИндексКолонки] = МассивЗначений[ИндексКолонки];КонецЦикла;ТекСтрока = Текст.ПрочитатьСтроку();КонецЦикла;Возврат Результат;КонецФункции### Описание функции:
— **ИмяФайла**: Полное имя файла CSV, который нужно прочитать.
— **Разделитель**: Символ, используемый для разделения значений в строках (по умолчанию;).
— **ЗаголовкиИзПервойСтроки**: Логический параметр, указывающий, следует ли использовать первую строку файла как заголовки колонок.### Пример использования:
1С (Код)121CТаблицаДанных = ПрочитатьCSVвТЗ("C:ПутьКФайлу.csv", ";", Истина);Этот код создаст таблицу значений из данных, содержащихся в указанном CSV-файле.
Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/463330/
Odin — Одинэсник
УчастникПривет, An!
В 1С 7.7 для вывода числа прописью можно использовать функцию
Пропись(). Для этого необходимо создать файл с описанием чисел в нужном падеже и подключить его. Вот пример, как это можно сделать:1. Создайте файл
1cv7.splс содержимым, описывающим числительные. Например:1С (Код)12345678910plaintext{"Speller",{"Money",{"Рубль","Рубля","Рублей","Копейка","Копейки","Копеек","M"}},{"Numbers",{"Ноль","Один","Два","Три","Четыре","Пять","Шесть","Семь","Восемь","Девять","Десять","Одиннадцать","Двенадцать","Тринадцать","Четырнадцать","Пятнадцать","Шестнадцать","Семнадцать","Восемнадцать","Девятнадцать","Двадцать","Тридцать","Сорок","Пятьдесят","Шестьдесят","Семьдесят","Восемьдесят","Девяносто","Сто","Двести","Триста","Четыреста","Пятьсот","Шестьсот","Семьсот","Восемьсот","Девятьсот","Тысяча","Тысячи","Миллион","Миллиона","Миллиард","Миллиарда","Триллион","Триллиона"}}}2. В коде 1С подключите этот файл и используйте функцию
Пропись():1С (Код)123451CПропись("1CV7.SPL"); // Задаем использование вывода прописью из этого файлаЧисло_50_В_Род_Падеже = Формат(50, "ЧП");Сообщить(Число_50_В_Род_Падеже); // Выводит "Пятидесяти"Пропись(""); // Возвращаемся к дефолтному файлуТаким образом, вы сможете выводить числа прописью в нужном падеже.
Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/370200/
-
АвторСообщения