Имя: Пароль:
1C
1С v8
внешние источники данных, проблема с отображением (5000 отражается как 5 000)
0 Skom
 
27.04.15
11:11
через ВИД подключаюсь к базе MySQL
Тип нужного поля - число.

мне в 1с надо получить строку.

в настройках поля во Внешних Источниках Данных ставлю СТРОКА и на выходе получаю строку с разделением групп, т.е. "5 000", а надо получить строку "5000"

как решить проблему, может знает кто?
1 Skom
 
27.04.15
11:11
в региональных настройках для базы уже настроено. отключил группировку цифр.
2 hhhh
 
27.04.15
11:12
(0) xmlСтрока
3 asady
 
27.04.15
11:12
поставь число и при выводе в условном оформлении выбирай формат
4 Skom
 
27.04.15
11:12
(2) боюсь не понял я тебя
5 Skom
 
27.04.15
11:13
(3) мне в запросе надо собрать 3 поля в одно.
6 asady
 
27.04.15
11:17
(5) при выводе собирай
7 Skom
 
27.04.15
11:18
если бы в запросе был аналог функции replace(<Строка>,<что>,<на что>)
проблема бы решилась
8 asady
 
27.04.15
11:19
(7) вышли как пожелание на линию поддержки 1С
9 Skom
 
27.04.15
11:20
(6) мне надо в условия поставить
данные 3-х полей надо собрать в одно, это будет ключ уникальности (код справочника), который в запросе в условии выступает.
10 Skom
 
27.04.15
11:20
(6) вот поэтому твой вариант не поможет.

|   "+?(ТолькоНовые=Истина,"И (КартыСКЛ.COD_O + КартыСКЛ.COD_A+КартыСКЛ.COD_OWN) НЕ В (&НашиКарты)","")+"
11 Рэйв
 
27.04.15
11:23
СтрЗаменить(Строка(ТвоеЧисло),СимволыНПП,"")
12 Рэйв
 
27.04.15
11:23
*Символы.НПП
13 Ненавижу 1С
 
гуру
27.04.15
11:26
про Формат уже было?
14 Рэйв
 
27.04.15
11:26
(13)Пока нет:-)
15 Skom
 
27.04.15
11:30
|ВЫБРАТЬ
    |    ВЫРАЗИТЬ(КартыСКЛ.ElectronicNumber КАК Строка(10)) КАК ИДЭлектронный,
    |    КартыСКЛ.GraphicalNumber КАК ИДГрафический,
    |    КартыСКЛ.COD_O КАК ИДОц,
    |    КартыСКЛ.COD_A КАК ИДПредприятия,
    |    КартыСКЛ.COD_OWN КАК ИДВодителя,
    |    КартыСКЛ.OwnPINCode КАК ПинКод,
    |    КартыСКЛ.FIO_OWN КАК Наименование
    |ИЗ
    |    ВнешнийИсточникДанных.ТопливныеКарты"+Регион+".Таблица.card_owner КАК КартыСКЛ
    |ГДЕ
    |       (КартыСКЛ.COD_O + КартыСКЛ.COD_A+КартыСКЛ.COD_OWN) НЕ В (&НашиКарты)
    |";

есть справочник,
мне надо обновить его из внешних данных.
если полная синхронизация, то проблем нет, если только обновление, то надо выбрать только те записи, которых нет в справочнике, вот тут и возникает необходимость наложить фильтр.
16 Skom
 
27.04.15
11:31
потому как код справочника складывается из:
КлючПорядка = СокрЛП(Выборка.ИДОц) + СокрЛП(Выборка.ИДПредприятия) + СокрЛП(Выборка.ИДВодителя);
17 Рэйв
 
27.04.15
11:33
(15)Это уже тема для новой ветки:-)
18 Рэйв
 
27.04.15
11:34
тут тебе клуб "Что?Где?Когда?" что ли?:-)
19 Skom
 
27.04.15
11:38
основной вопрос в том, как сделать так, что бы в поле внешнего источника данных, при преобразовании из числа в строку, пробел между группами не выводился
20 Рэйв
 
27.04.15
11:40
(19)помоему ответ уже дан..или ты ответы принципиально не читаешь?:-)
21 pessok
 
27.04.15
11:41
(20) он же хочет без постобработки...
ВЫРАЗИТЬ КАК ЧИСЛО пробовал?
22 pessok
 
27.04.15
11:41
+(21) уже после конкатенации
23 Рэйв
 
27.04.15
11:42
(21)Не получится
24 Рэйв
 
27.04.15
11:43
строка все равно будет содержать неразрывный пробел как ее не крути,пока насильно его не уберешь
25 asady
 
27.04.15
11:43
Налицо ошибка в проектировании

получать ИДэлектронный на лету нельзя - или делай его числовым тогда у тебя будет однозначное соответствие между 1С и внешним исочником данных или
мути некий РС который будет ассоциировать твои ИДЭлектронные с внешними ключами
26 Skom
 
27.04.15
11:46
(20) постобработка не вариант, по крайней мере пока не испробованы другие варианты.
27 Рэйв
 
27.04.15
11:48
(26)Заранее говорю- не взлетит :)  не ты первый на фоне этих граблей.
28 rsv
 
27.04.15
11:50
(25) Налицо  отсутствие необходимых функций в .... языке запросов
29 rsv
 
27.04.15
11:50
+(28) А не ошибок проектирования. Ну ... а если в mySQL нарисовать уже приведение  к строке - то было бааа неплохо.
30 Skom
 
27.04.15
11:51
(29) база другого приложения. не могу туда лезть
31 pessok
 
27.04.15
11:53
(30) тогда постообработка
32 Skom
 
27.04.15
11:59
Кстати,
ВЫБРАТЬ  первые 100
    card_owner.COD_A,
    ВЫРАЗИТЬ(card_owner.COD_A КАК Строка(9))
ИЗ
    ВнешнийИсточникДанных.ТопливныеКартыКузбасс.Таблица.card_owner КАК card_owner

при таком раскладе выдает строку без "групп"
т.е. 5000 выдает как "5000"
а если ставлю
как строка(10) - то выдает "5 000"
33 Skom
 
27.04.15
12:26
нашел такое решение,
тип поля - строка неограниченной длины, а в запросе
выразить как строка(10)
Ошибка? Это не ошибка, это системная функция.