Вход | Регистрация


1С:Предприятие :: 1С:Предприятие 7.7 и ранее

v7: СокрЛП в запросе

v7: СокрЛП в запросе
Я
   Масянька
 
08.01.13 - 10:14
День добрый!

Всех - с прошедшими и наступающими!

Вопрос: как в 7.7 в запросе отсечь пробелы?
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса = "//{{ЗАПРОС()
 
|Период с ДатаНачала по ДатаОкончания;
|ОбрабатыватьДокументы все;
|ТекДок        = Документ.ГарантийныйТалон.ТекущийДокумент;
|ДатаДокумента= Документ.ГарантийныйТалон.ДатаДок;
|Товар         = Документ.ГарантийныйТалон.Номенклатура;
|ИмяТовар     = Документ.ГарантийныйТалон.Номенклатура.Наименование;
|КолВо         = Документ.ГарантийныйТалон.Количество;
|Гарантия     = Документ.ГарантийныйТалон.СрокГарантии;
|СерНомер     = Документ.ГарантийныйТалон.СерийныйНомер;
|Группировка ТекДок;
|Условие (СерНомер = СерийныйНомер);";


Условие не срабатывает, так как длина серийного номера = 150, а заполнено, к примеру, 13 символов. И СерНомер именно эти 13 символов.

Спасибо.
 
 
   Надсмотрщик
 
1 - 08.01.13 - 10:21
Своей функцией
   Wobland
 
2 - 08.01.13 - 10:23
а сделать параметр нужной длины?
   orefkov
 
4 - 08.01.13 - 10:26
Перед запросом сделай
СерийныйНомер = Формат(СерийныйНомер, "С150");
   Масянька
 
5 - 08.01.13 - 10:26
(1) Спасибо!
(2) Не, не вариант - длина серийника - у разной номенклатуры по-разному.
   Нуф-Нуф
 
6 - 08.01.13 - 10:27
Лев("тутмногопробелов",150-ДлинаСерийникаПараметра)+СерийникПарамтер
   Mikeware
 
7 - 08.01.13 - 10:28
Переходи уже на нормальные запросы :-)
   Wobland
 
8 - 08.01.13 - 10:28
(5) и длина поля у разной номенклатуры разная?
   Масянька
 
9 - 08.01.13 - 10:29
(7) Не начинай. :)
   Масянька
 
10 - 08.01.13 - 10:30
(8) Длина поля = 150, но заполнено - по-разному (где-то 10, где-то 25, где-то 2 или 3 по 25 и т.д.)
 
 Рекламное место пустует
   Mikeware
 
11 - 08.01.13 - 10:30
(9) тебе сокрЛП нафиг не вперлось.
добивай параметр пробелами...
   Нуф-Нуф
 
12 - 08.01.13 - 10:30
(10) а (6) осмыслить не получается?
   orefkov
 
13 - 08.01.13 - 10:31
(5)
Ты хочешь сказать, что длина Документ.ГарантийныйТалон.СерийныйНомер разная для разной номенклатуры?
Там наоборот всегда длина одна, 150.
Например 13 символов и 137 пробелов.
А сравнивается с учетом хвостовых пробелов.
Добивай параметр пробелами до 150.
Ну и естессно, 1Сные запросы в топку.
   Масянька
 
14 - 08.01.13 - 10:32
А мне больше нравится - удалить лишние пробелы!
   Wobland
 
15 - 08.01.13 - 10:32
(6) Лев(Серийник+"150пробелов", 150) и никаких длин
   Wobland
 
16 - 08.01.13 - 10:32
(14) вперёд! потом расскажешь
   Нуф-Нуф
 
17 - 08.01.13 - 10:33
(15) кстати да, тоже норм, только имхо пробелы должны быть слева
   КонецЦикла
 
18 - 08.01.13 - 10:46
(17) Пробелы в строке - справа
   Масянька
 
19 - 08.01.13 - 10:46
Ладно, уговорили не удалять, а дополнять пробелами.
Уже сделала - СПАСИБО!
   Нуф-Нуф
 
20 - 08.01.13 - 10:51
(18) точняк. туплю. попутал с лидирующими нулями
   orefkov
 
21 - 08.01.13 - 10:52
(6), (15) - см (4)
   Torquader
 
22 - 08.01.13 - 13:27
(20) Это в коде пробелы слева, а в обычной строке - справа.
Конечно, можно и СОКРЛП в запрос засунуть (причём, должно работать), но скорость вас поразит.


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует