powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / [игнор отключен] [закрыт для гостей] / Выбрать записи с ресурсом типа строка
12 сообщений из 12, страница 1 из 1
Выбрать записи с ресурсом типа строка
    #36655007
supervk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
8.1
Есть регистр с ресурсом составного типа. Как выбрать записи с ресурсом имеющим типа строка? Т.е. хочется иметь какой-нибудь оператор типа ССЫЛКА, но чтобы он понимал не только ссылочные значения, но и типы булево, дата и т.д.

Что-то вроде:
Код: plaintext
1.
2.
3.
4.
5.
6.
ВЫБРАТЬ
	Рег.Наименование,
	Рег.Значение
ИЗ
	РегистрСведений.Рег КАК Рег
ГДЕ
	Рег.Значение ССЫЛКА СТРОКА
...
Рейтинг: 0 / 0
Выбрать записи с ресурсом типа строка
    #36655186
DmitriyZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Похоже запросом эту задачку не решить.
...
Рейтинг: 0 / 0
Выбрать записи с ресурсом типа строка
    #36655219
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я бы попробовал в 2 этапа

1. ЧЧЧЧ Выразить как строка
2 - сравнение ЧЧЧ = этому выраженному значению - тогда отбор


Отпишись что получилось.
...
Рейтинг: 0 / 0
Выбрать записи с ресурсом типа строка
    #36655228
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Рег.Наименование,
Рег.Значение
ИЗ
РегистрСведений.Рег КАК Рег
ГДЕ
Выразить (Рег.Значение Выразить как (Строка))=Рег.Значение
...
Рейтинг: 0 / 0
Выбрать записи с ресурсом типа строка
    #36655392
supervk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Программист 1с,

Не прокатило.
Код: plaintext
1.
2.
3.
4.
5.
Рег.Наименование,
Рег.Значение
ИЗ
РегистрСведений.Рег КАК Рег
ГДЕ
Выразить (Рег.Значение Выразить как (Строка))=Рег.Значение
Сказала, что Ожидается выражение "КАК"

Код: plaintext
1.
2.
3.
4.
5.
6.
ВЫБРАТЬ
	Рег.Наименование,
	Рег.Значение
ИЗ
	РегистрСведений.ПредопределенныеЭлементы КАК Рег
ГДЕ
	(Выразить Рег.Значение как (Строка) )=Рег.Значение
Сказала, что нельзя сравнивать поля неограниченной длины и поля несовместимых типов.
...
Рейтинг: 0 / 0
Выбрать записи с ресурсом типа строка
    #36655477
DmitriyZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DmitriyZПохоже запросом эту задачку не решить.

Это я погорячился вот рабочий код
ВЫБРАТЬ
ЕщеРегистрСведений.Измерение1,
ЕщеРегистрСведений.Ресурс1
ИЗ
РегистрСведений.ЕщеРегистрСведений КАК ЕщеРегистрСведений
ГДЕ
ВЫРАЗИТЬ(ЕщеРегистрСведений.Ресурс1 КАК СТРОКА) ЕСТЬ НЕ NULL
...
Рейтинг: 0 / 0
Выбрать записи с ресурсом типа строка
    #36655494
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Замечательно. У тебя не может быть составной тип данных и строка неограниченной длины. 1с этого не тянет.

Длину метаданных ты знаешь. Но можно и с запасом.

Выразить Рег.Значение как (Строка(100)) )=Рег.Значение


DmitriyZ ошибка - у тебя пройлет тип число.
...
Рейтинг: 0 / 0
Выбрать записи с ресурсом типа строка
    #36655508
DmitriyZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Программист 1сЗамечательно. У тебя не может быть составной тип данных и строка неограниченной длины. 1с этого не тянет.

Длину метаданных ты знаешь. Но можно и с запасом.

Выразить Рег.Значение как (Строка(100)) )=Рег.Значение


DmitriyZ ошибка - у тебя пройлет тип число.

Ничего подобного! Во первых, я тестировал, во вторых:

Если <Выражение> содержит в составном типе требуемый <Тип значения>, то приведение типа считается осуществимым, и для каждого значения указанного типа результатом будет это самое значение. Для значений других типов результатом приведения типа будет значение NULL.
...
Рейтинг: 0 / 0
Выбрать записи с ресурсом типа строка
    #36655528
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DmitriyZ, Не пробовал.

Тоесть Ничего кроме строки нельзя выразить в виде строки? И тд и тп с числом. А пожалуй да - так будет правильнее.

Автор проверяй версию -

ВЫРАЗИТЬ(ЕщеРегистрСведений.Ресурс1 КАК СТРОКА) ЕСТЬ НЕ NULL


а мой вариант - уточню - ВАЖНО знать количество символов в типе данных

Выразить Рег.Значение как (Строка(65)) )=Рег.Значение
...
Рейтинг: 0 / 0
Выбрать записи с ресурсом типа строка
    #36655772
KuzEv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А реально добавить в реквизит (не в ресурс, но или в ресурс) поле "Тип" данных?
По нему потом и ориентироваться.
...
Рейтинг: 0 / 0
Выбрать записи с ресурсом типа строка
    #36655779
KuzEv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А реально добавить в реквизит (не в ресурс, но или в ресурс) поле "Тип" данных?
По нему потом и ориентироваться.
...
Рейтинг: 0 / 0
Выбрать записи с ресурсом типа строка
    #36658322
supervk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DmitriyZ, Программист 1с.

Ваши варианты работают, спасибо.
Остановился на
Код: plaintext
1.
2.
3.
4.
5.
6.
ВЫБРАТЬ
	Рег.Наименование,
	Рег.Значение
ИЗ
	РегистрСведений.ЕщеРегистрСведений КАК Рег
ГДЕ
	(ВЫРАЗИТЬ(Рег.Значение КАК СТРОКА)) ЕСТЬ НЕ NULL
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / Выбрать записи с ресурсом типа строка
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]