Имя: Пароль:
1C
 
Убрать префиксы номера в запросе
0 ivanpoklad
 
13.08.10
08:25
Ктонибуть реализовал "красивым" способом?

есть поле "Номер" - документа или справиочника
и "ПрефиксУзлаРаспределеннойИнформационнойБазы"
как из "Номер"  убрать "ПрефиксУзлаРаспределеннойИнформационнойБазы" в запросе?
1 Mitriy
 
13.08.10
08:31
а почему не обработать результат? зачем обязательно в запросе?
не говорю, что невозможно, просто геморно...
2 ivanpoklad
 
13.08.10
08:34
построитель
3 Mitriy
 
13.08.10
08:38
(3) сделай на СКД, там можно функции для представления поля подключать...
4 ivanpoklad
 
13.08.10
08:46
да кстате....вариант!....
5 ivanpoklad
 
13.08.10
09:25
Реализовал следующим образом: (тк отчет формируется только по одной организации, хотя можно повертеть и для любой)
- Длина1= СтрДлина(Константы.ПрефиксУзлаРаспределеннойИнформационнойБазы.Получить()); //получили длину префикса узла
   Длина2= СтрДлина(Организация.Префикс); //получили длину префикса организации
   ДлинаПрефикса = Длина1+Длина2;
   ДлинаНомера = Метаданные.Документы.ТребуемыйДокумент.ДлинаНомера; //тут длина номера в метаданных зотя практически везде одинаков
   ВыбДлина = ДлинаНомера-ДлинаПрефикса; //количество необх=одимых симполов слава
   ПостроительОтчетаОтчет.Параметры.Вставить("ВыбДлина", ВыбДлина); //установили параметр



ПОДСТРОКА(ИсходныеДанные.Номер, &ВыбДлина, &ВыбДлина) КАК Номер //а это в запросе....
6 Serg_1960
 
13.08.10
09:35
Предположение, что длина номера определяется по "Метаданные.Документы.ТребуемыйДокумент.ДлинаНомера" - неверно. Это максимальная длина номера. Реальное количество символов в номере может быть меньше.