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


1С:Предприятие :: 1С:Предприятие 8 общая

Найти документ по номеру

Найти документ по номеру
Я
   tatoshka0403
 
01.11.16 - 09:49
Добрый день! Помогите реализовать поиск документа по номеру
номер в файле: "44106"
номер в базе:  "44 106     "
 
 
   polosov
 
1 - 01.11.16 - 09:52
(0) Формат
   tatoshka0403
 
2 - 01.11.16 - 09:55
(1) Ну как я понял найтипономеру не прокатит. В запросе формат писать?
   polosov
 
3 - 01.11.16 - 09:56
(2) Получи таблицу номеров, преобразуй, скорми запросу полученный массив.
   tatoshka0403
 
4 - 01.11.16 - 09:57
(3) Ну это же будет ппц как долго, а сразу нельзя искать по формат(номер)?
   Naf_kultura
 
5 - 01.11.16 - 09:58
(0) а откуда такие номера в базе оказались?
   Альбатрос
 
6 - 01.11.16 - 09:58
(4) Прям устанешь ждать?
   tatoshka0403
 
7 - 01.11.16 - 10:02
(5) кто то поменял в начале года
   shadow_sw
 
8 - 01.11.16 - 10:04
НовыйНомер = Лев(Номер, 2)+" "+Прав(Номер,4);
   Serg_1960
 
9 - 01.11.16 - 10:14
Не свести, денег не будет. Судя по всему число было записано в номер документа напрямую, с преобразованием "по умолчанию" и сейчас у автора там сидит так называемый "неразрывный пробел".

Поздравляю, Вы - "1 024-ая жертва неразрывного пробела"(я)

По журналу регистрации теоретически возможно найти кто именно это сделал и оторвать ему руки.
   shadow_sw
 
10 - 01.11.16 - 10:24
(9) сдал контору :)
 
 Рекламное место пустует
   tatoshka0403
 
11 - 01.11.16 - 11:08
(3) Спасибо
   Serg_1960
 
12 - 01.11.16 - 11:18
Можно никого не кормить таблицей номеров :) , а прямо в запросе вырезать лишний символ - ПОДСТРОКА().
   tatoshka0403
 
13 - 01.11.16 - 13:43
(12)
КОГДА ПОДСТРОКА(РеализацияТоваровУслуг.Номер, 2, 1) = " "
        ТОГДА ПОДСТРОКА(РеализацияТоваровУслуг.Номер, 1, 1) + ПОДСТРОКА(РеализацияТоваровУслуг.Номер, 3, 9)
    КОГДА ПОДСТРОКА(РеализацияТоваровУслуг.Номер, 3, 1) = " "
        ТОГДА ПОДСТРОКА(РеализацияТоваровУслуг.Номер, 1, 2) + ПОДСТРОКА(РеализацияТоваровУслуг.Номер, 4, 8)

вот так вот?
   h-sp
 
14 - 01.11.16 - 13:47
(13) просто один раз пройдите по журналу и замените обработкой все номера на нормальные. Желательно уже сегодня. А завтра уже нормально займетесь поиском.
   Serg_1960
 
15 - 01.11.16 - 13:49
(13) Вот как-то вот так :)
    НомерИзФайла = "44106";
    НомерИзБазы = "" + Число(НомерИзФайла) + "     ";
    Запрос = Новый Запрос("ВЫБРАТЬ &НомерИзФайла = ПОДСТРОКА(&НомерИзБазы, 1, 2) + ПОДСТРОКА(&НомерИзБазы, 4, 3) КАК Проверка");
    Запрос.УстановитьПараметр("НомерИзФайла", НомерИзФайла);
    Запрос.УстановитьПараметр("НомерИзБазы", НомерИзБазы);
    Выборка = Запрос.Выполнить().Выбрать();
    Выборка.Следующий();
    Сообщить(Выборка.Проверка);
    Возврат;
   tatoshka0403
 
16 - 01.11.16 - 13:52
(15) А если длинна не 5, писать еще функцию которая будет добивать до нужной длинны.
   Serg_1960
 
17 - 01.11.16 - 13:59
Числа 1,2,3,4 в запросе могут быть производные от длины текущего номера.

Вы таки хотите иметь универсальный алгоритм? Вы не много хотите ли?
   tatoshka0403
 
18 - 01.11.16 - 14:05
(17) Таки нет, но наверно реально проще убрать из номеров эти пробелы и проблем не будет.
   Adilgeriy
 
19 - 01.11.16 - 14:19
а номера в порядок привести не проще будет?
   ELEA26
 
20 - 01.11.16 - 14:21
СтрЗаменить пробелы на ничего.
   Serg_1960
 
21 - 01.11.16 - 14:31
Шалим немного :)

    НомерИзФайла = "44106";
    Пустышка = Документы.ТребованиеНакладная.СоздатьДокумент();
    Пустышка.Номер = Число(НомерИзФайла);
    НомерИзБазы = Пустышка.Номер;
    Пустышка = Неопределено;
    Результат = Документы.ТребованиеНакладная.НайтиПоНомеру(НомерИзБазы, ТекущаяДата());
    Сообщить(?(ЗначениеЗаполнено(Результат), Результат, "Неопределено"));
    Возврат;
   LeReve
 
22 - 01.11.16 - 14:31
НомерВБазе = СтрЗаменить(НомерВБазе , Символы.НПП, "")
   Serg_1960
 
23 - 01.11.16 - 14:37
Эээ... пришел LeReve и всё испортил :( "Ну, я так не играю"(цы)
   tatoshka0403
 
24 - 01.11.16 - 15:21
(22) это подойдет для(3)
   LeReve
 
25 - 01.11.16 - 15:24
(24) Так приведи номера в базе в нормальный вид. в (21) отличная идея тогда для тебя))


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