|
НайтиПоНомеру - не находит документ, а он есть... , PHAISTOS
| ☑ | ||
---|---|---|---|---|
0
zenik
07.06.13
✎
13:44
|
Камрады, подскажите в чем трабла: пишу обработку по переносу данных из клюшек в Бухию КОРП 2.0 по ОЛЕ. Номера документов беру из 7.7 (номер короче - 10 знаков против 11 в восьмерке). Документ ПриходныйКассовыйОрдер - без проблем, НайтиПоНомеру - его всегда находит. А вот РасходныйКассовыйОрдер - фиг. уже попробовал банально:
Док = Документы.РасходныйКассовыйОрдер; Сообщить(Док.НайтиПоНомеру("АРО1-00524",Дата(2013,4,1))); Док = Документы.ПриходныйКассовыйОрдер; Сообщить(Док.НайтиПоНомеру("ТПО1-01282",Дата(2013,4,1))); Приходный есть, расходного нет :( Документ с таким номером есть 100%, дата правильная. В обработке по переносу, при записи ругается, что номер не уникальный, а не находит никак. Нипанима :( Настройки нумерации у обоих видов документов посмотрел - вроде одинаковые. |
|||
1
shuhard
07.06.13
✎
13:45
|
(0)[ Документ с таким номером есть 100%,]
не верю |
|||
2
Волшебник
07.06.13
✎
13:46
|
Вот эта конструкция неверная:
Дата(2013,4,1) |
|||
3
Волшебник
07.06.13
✎
13:46
|
Правильно так:
'2013-04-01' |
|||
4
rbcvg
07.06.13
✎
13:47
|
"Документ с таким номером есть 100%, дата правильная" - тупая машина не понимает человека, который умнее нее.
|
|||
5
acsent
07.06.13
✎
13:48
|
(2) ты не прав
|
|||
6
mikecool
07.06.13
✎
13:49
|
(2) нормальная конструкция
|
|||
7
Godofsin
07.06.13
✎
13:49
|
(2) Чой-то неправильная?
|
|||
8
Defender aka LINN
07.06.13
✎
13:49
|
(2) Сообщить(Дата(2013,4,1)) сообщает "01.04.2013 0:00:00"
|
|||
9
Maxus43
07.06.13
✎
13:51
|
Если номер строка - то и пробелы незначащие надо бы тоже
|
|||
10
Бледно Золотистый
07.06.13
✎
13:52
|
Если я правильно понял, то в 8-ке 1 пробел добавляется.
|
|||
11
Godofsin
07.06.13
✎
13:53
|
я тоже за проверку корректности искомого номера
|
|||
12
vova1122
07.06.13
✎
13:54
|
А где сам автор? Наверное уже все исправил и все работает....
|
|||
13
zenik
07.06.13
✎
13:54
|
(1) http://s019.radikal.ru/i609/1306/c8/1a77803dc3eb.png
(2) Почему для приходного это работает? Тем паче этот код только для проверки, обработка по переносу берет оригинальную дату документа. |
|||
14
zenik
07.06.13
✎
13:55
|
(12) да здесь я, за вами не угонишься :)
|
|||
15
zenik
07.06.13
✎
13:56
|
(9) я пробовал пробелы добавлять - все равно, ПКО ищет, РКО нет. Я не понимаю почему разница в результатах.
|
|||
16
zenik
07.06.13
✎
14:00
|
Док = Документы.РасходныйКассовыйОрдер;
Сообщить(Док.НайтиПоНомеру("АРО1-00524 ",Дата(2013,4,1))); Док = Документы.ПриходныйКассовыйОрдер; Сообщить(Док.НайтиПоНомеру("ТПО1-01282 ",Дата(2013,4,1))); Вот так, результат тот же. РКО - не находит, ПКО - находит. Если просто создаю РКО и номер ему присвает система - то по этому номеру находит... |
|||
17
vova1122
07.06.13
✎
14:02
|
(16) Проверь номер РКО . Может там латинские символі
|
|||
18
vova1122
07.06.13
✎
14:03
|
+(17) а в твоем поиске кирилица (или наоборот)
|
|||
19
zenik
07.06.13
✎
14:05
|
Номер - копипаста...
|
|||
20
rbcvg
07.06.13
✎
14:06
|
а если без "Дата(2013,4,1)" попробовать
|
|||
21
НЕА123
07.06.13
✎
14:07
|
хз. может запросом попробовать?
|
|||
22
zladenuw
07.06.13
✎
14:09
|
(19) сделай проще выведи эту ссылку в реквизит, через реквизит найди этот документ по номеру и дате. и сообщи номер и дату. а то бубен тебе подарить надо :)
|
|||
23
vova1122
07.06.13
✎
14:09
|
(21) "из пушки по воробях"?
|
|||
24
zenik
07.06.13
✎
14:09
|
(20) Тогда ничего не находит... ни тот ни другой...
(21) Ушел пробовать |
|||
25
vova1122
07.06.13
✎
14:12
|
стоп. а разве там не нужно
|
|||
26
vova1122
07.06.13
✎
14:12
|
док новый док.такой-то....
|
|||
27
rinatru
07.06.13
✎
14:14
|
есть разница ТПО1-01282 и ТПО1-01 282
ты не пробел ищи, а неразрывный пробел, т.е. Символ.НПП СтрЗаменить(МойНомер,Символы.НПП,"") |
|||
28
zenik
07.06.13
✎
14:25
|
(21) Запросом почему то так же...
(27) Еще раз: обработка ОЛЕ, при первом запуске создала документы с теми номерами которые там есть (неразрывных пробелов там точно нет - редактирование номеров не доступно). Повторный запуск должен приводить к поиску тех же самых номеров. В случае с ПКО - так и есть, все номера выискиваются нормально, без каких либо проблем, обработано порядка 13000 документов. А вот с РКО что то странное. |
|||
29
zladenuw
07.06.13
✎
14:26
|
(28) сделай так в (22)
|
|||
30
1Сергей
07.06.13
✎
14:27
|
(22) +1 искать по номеру надо лишь при импорте. Больше не могу придумать, где эта функция может понадобиться
|
|||
31
zenik
07.06.13
✎
14:30
|
(29) В оригинальной обработке поиск выглядит так:
ПКО = Документы.ПриходныйКассовыйОрдер; Результат = ПКО.НайтиПоНомеру(ОЛЕДокумент.НомерДок, ОЛЕДокумент.ДатаДок); РКО = Документы.РасходныйКассовыйОрдер; Результат = РКО.НайтиПоНомеру(ОЛЕДокумент.НомерДок, ОЛЕДокумент.ДатаДок); Что сделать в 22, я не понял... (30) Оп, у нас озарение :) Это как бы и есть импорт... |
|||
32
1Сергей
07.06.13
✎
14:35
|
Кстати, СокрЛП предлагали уже?
|
|||
33
zenik
07.06.13
✎
14:38
|
(32) Да я уже что только не пробовал.
Если оно должно работать, то пусть работает у всех документов, если не должно, то почему работает выборочно? Спасет ли отца русской демократии добивка 0 до полных 11 символов в номере? |
|||
34
1Сергей
07.06.13
✎
14:42
|
(33) спасёт
|
|||
35
dva1c
07.06.13
✎
14:43
|
(33) Спасет.
|
|||
36
zenik
07.06.13
✎
14:48
|
(34),(35) А вот фиг :) Я понимаю, что звучит как бред, но уже сам тихо хренею.
|
|||
37
1Сергей
07.06.13
✎
14:48
|
(36) покажи как пробелы добавлял
|
|||
38
zenik
07.06.13
✎
14:53
|
(37) Нули добавлял... Самым простым способом. Первый проход документы создались, а вот искать уже не хочет :(
НомерДок = ОЛЕДокумент.НомерДок + "0"; |
|||
39
dva1c
07.06.13
✎
14:56
|
(38) В (37) вопрос про пробелы, а ты пишешь "0". Я чего-то не догоняю?
|
|||
40
zenik
07.06.13
✎
15:08
|
(39) - (33) перечитай. Я и писал про 0... Зачем (37) про пробелы спрашивает - не ко мне вопрос. Про пробелы выше уже решили - не спасает.
|
|||
41
John83
07.06.13
✎
15:35
|
попробуй в самой БП найти по номеру
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |