Имя: Пароль:
1C
1С v8
КД. произвольный алгортим выгрузки
,
0 Wobland
 
29.11.12
06:25
пишу с трудом, сформулирую только главное. несколько документов источника ОтчётККМ (ТиС) превращаю в один общий за день в БП 3.0. собственный алгортим:
|SELECT DISTINCT
|    CAST(LEFT(Жур.Date_Time_IDDoc, 8) AS DATETIME) AS ДатаДок,
|FROM
|    _1SJourn AS Жур
...
док=СоздатьОбъект("Документ.ОтчетККМ");
док.ДатаДок=ТЗ.ДатаДок;
ВыгрузитьПоПравилу(док, , , , "ОтчетОРозничныхПродажах");

в файл попадает такое:
- <Свойство Имя="Дата" Тип="Дата">
 <Значение>2012-11-06T</Значение>
 </Свойство>

при загрузке такую дату оно преобразовать не может.
а если делаать стандартной выгрузкой (по тому же алгоритму обработкой насоздавал и записал документы), то в файл пишется так:
- <Свойство Имя="Дата" Тип="Дата">
 <Значение>2001-01-01T12:00:00</Значение>
 </Свойство>

вопрос: что я не так делаю, и что это за хрень такая со временем?
1 Рэйв
 
29.11.12
06:38
попробуй в ПКС Даты

ПриВыгрузке

Если Прав(Значение,1)="T" Тогда
   Значение=Значение+"12:00:00";
КонецЕсли;
2 Wobland
 
29.11.12
06:39
(1) гы ;)
3 Wobland
 
29.11.12
06:40
стоп. при выгрузке же у нас ещё дата, а не строка
4 Рэйв
 
29.11.12
06:40
(3)Значение помоему уже строка.
5 Рэйв
 
29.11.12
06:41
на крайняк сделай

Значение=Строка(Значение)+"12:00:00";
:-)
6 Рэйв
 
29.11.12
06:41
все равно потом в xml  к строке приведет
7 Wobland
 
29.11.12
06:42
- <Свойство Имя="Дата" Тип="Дата">
 <Значение>2012-11-06T12:00:00</Значение>
 </Свойство>


спасибо!
8 cw014
 
29.11.12
07:57
В SQL - DATETIME - может не являться датой и временем. Поставь Сообщить(ТипЗнч(ТЗ.ДатаДок)); И посмотри что покажет
9 dk
 
29.11.12
08:05
(0) сам же получаешь чистую дату без времени в запросе
LEFT(Жур.Date_Time_IDDoc, 8)
10 Wobland
 
29.11.12
08:07
(8) Сообщить(ТипЗначенияСтр(ТЗ.ДатаДок)+" / "+ТипЗначения(ТЗ.ДатаДок)); - Дата / 3
(9) смотрел глазами в это поле, время каким-то странным образом записано...
11 Andy13
 
29.11.12
08:21
(0) Я это, может приземленно как то рассуждаю, но зачем вот это: док=СоздатьОбъект("Документ.ОтчетККМ");
12 dk
 
29.11.12
08:21
зашифровано в 36-й системе
проще из документа потом выдернуть через получитьвремя()
13 cw014
 
29.11.12
08:23
Я грешным делом про восьмерку подумал....
Смотри в (12)... Ты создаешь документ и ставишь дату. А время у него появится только после записи...
14 Andy13
 
29.11.12
08:25
(13) А нафига он создает документ?
15 Wobland
 
29.11.12
08:30
аккумулирую все ОтчётыККМ за день, чтоб в приёмнике один был. создаю новый фиктивный, чтоб выгрузить по правилу, записывать его, ессесно, не хочу
16 dk
 
29.11.12
08:32
Автовремяотключить()
УстановитьВремя()
---
либо не париться и текстом забить жестко при/послевыгрузки
17 Wobland
 
29.11.12
08:36
(16) текстом уже забил, париться больше не хочу. а за подсказку спасибо
18 Andy13
 
29.11.12
08:36
(15) Понятно. Недавно видать с КД работаешь. Есть более простые пути. Почитай в хэлпе по обработчикам.
19 cw014
 
29.11.12
08:37
(18) Есть более простые пути.
Мы простых путей не ищем
20 GenV
 
29.11.12
08:38
ПолучитьДатуV8(ЧастьДата, ЧастьВремя = "00:00:00")
функция обработки выгрузки при выгрузке из 7.7
21 Wobland
 
29.11.12
09:01
(18) недавно. читал, ни хрена более простого не выдумал