Имя: Пароль:
1C
1С v8
Внешний источник Oracle
0 rellyel
 
21.05.13
13:14
База 1С УПП, релиз платформы 1С:Предприятие 8.2 (8.2.18.61)
Создан внешний источник, подключение есть. Данные можно получить запросом. Однако тип реквизита в таблице оракл число(15,2) - но 1с не видит дробной части и числа получаю только целые. Пожалуйста помогите.
1 rellyel
 
21.05.13
13:22
up
2 HEKPOH
 
21.05.13
13:24
а тип в 1С с дробными?
3 rellyel
 
21.05.13
13:25
да 15,2
4 HEKPOH
 
21.05.13
13:27
ты из запроса уже получаешь без дробных или в таблице на форме ВИД видишь без целых?
5 rellyel
 
21.05.13
13:29
В консоле запроса в результате запроса вижу данные например у них в Оракл 0,20 я вижу 0
6 HEKPOH
 
21.05.13
13:30
в забросе объединения есть?
7 rellyel
 
21.05.13
13:31
Нет ВЫБРАТЬ
   CIFRA_PAYS_TO_1C.PLAT_NUM КАК Номер,
   CIFRA_PAYS_TO_1C.LOG_FILIAL КАК Подразделение,
   CIFRA_PAYS_TO_1C.DATE_POST КАК Дата,
   CIFRA_PAYS_TO_1C.DATE_REAL КАК ДатаПоступило,
   CIFRA_PAYS_TO_1C.SUMMA  КАК Сумма,
   CIFRA_PAYS_TO_1C.PLAT_SCHET КАК ПлательщикСчет,
   CIFRA_PAYS_TO_1C.PLAT_R_SCHET КАК ПлательщикРасчСчет,
   CIFRA_PAYS_TO_1C.PLAT_BANK1 КАК Плательщик,
   CIFRA_PAYS_TO_1C.PLAT_BIK КАК ПлательщикБИК,
   CIFRA_PAYS_TO_1C.PLAT_K_SCHET КАК ПлательщикКорсчет,
   CIFRA_PAYS_TO_1C.POL_SCHET КАК ПолучательСчет,
   CIFRA_PAYS_TO_1C.VID_PLAT КАК ВидОплаты,
   CIFRA_PAYS_TO_1C.CARD_NUM КАК НомерЛицевогоСчета,
   CIFRA_PAYS_TO_1C.DOGOVOR,
   CIFRA_PAYS_TO_1C.NAME_CONTR КАК НаименованиеКонтрагента,
   CIFRA_PAYS_TO_1C.INN КАК ПлательщикИНН,
   CIFRA_PAYS_TO_1C.KPP КАК ПлательщикКПП,
   CIFRA_PAYS_TO_1C.NAZNACH КАК НазначениеПлатежа
ИЗ
   ВнешнийИсточникДанных.M2000.Таблица.CIFRA_PAYS_TO_1C КАК CIFRA_PAYS_TO_1C
ГДЕ
   CIFRA_PAYS_TO_1C.LOG_FILIAL = "Люберцы"
   И
   CIFRA_PAYS_TO_1C.DATE_POST МЕЖДУ &ДатаНач И &ДатаКон
8 rellyel
 
21.05.13
13:31
Поле сумма не правильно отображает тип
9 HEKPOH
 
21.05.13
13:33
думаю...
10 HEKPOH
 
21.05.13
13:40
"фары протирал? по колесам стучал?" (с)
в конфигураторе подключись к ВИД. посмотри там разрядность числа. Еси все норм, "Готово" и запуск приложения.
странно это как-то все
11 rellyel
 
21.05.13
13:42
Сейчас
12 DimGan
 
21.05.13
13:47
Может как-то так:
to_char(sum(round(s.kol_l * s.cena_real, 2))) as sumreal
13 HEKPOH
 
21.05.13
13:53
(12) не-а
14 rellyel
 
21.05.13
13:57
(12) у меня ошибка 1с так не понимает
15 HEKPOH
 
21.05.13
13:59
(14) естественно) полей таких же нет
16 rellyel
 
21.05.13
14:14
(15) я со своим полем
17 rellyel
 
21.05.13
14:15
(15) я говорю 1с не понимает TO_CHAR
18 rellyel
 
21.05.13
14:16
(15) Подключила ВИД в конфигураторе посмотрела запрос тип число(15)
19 Маратыч
 
21.05.13
14:27
Очевидно, проблема в разделителе дробной части. Где-то видел совет при получении сначала умножать на 100 прямо в запросе, потом делить обратно уже в 1С.
20 HEKPOH
 
21.05.13
14:34
(18) ну дык поставьте ему 15,2
21 rellyel
 
21.05.13
14:37
(20) и что я увижу правильное значение?
22 HEKPOH
 
21.05.13
14:39
(21) таки да
23 Маратыч
 
21.05.13
14:42
(21)(22) Вряд ли. Из-за разных региональных настроек баз (разделитель другой) 1С отбросит дробную часть после получения результатов запроса. Обрабатывать нужно каким-либо образом еще в самом запросе.
24 rellyel
 
21.05.13
14:48
(23)согласна
25 HEKPOH
 
21.05.13
14:50
(24) ну и не пробуйте(
26 rellyel
 
21.05.13
14:59