Имя: Пароль:
1C
 
Как получить дату и время документа через сом
0 kible
 
18.06.11
11:47
Сабж.
1 1Сергей
 
18.06.11
11:54
Вопрос по семерке?
2 ДенисЧ
 
18.06.11
11:55
датаДок.
ПолучитьВремя()
3 kible
 
18.06.11
11:59
(1) Подключаюсь к семерке из восьмерки
(2) ПолучитьВремя() Метод  можно использовать только для объектов, созданных функцией СоздатьОбъект. А у меня выборка.
4 Mikeware
 
18.06.11
12:00
(3) ну и создай объект. какие проблемы?
5 ДенисЧ
 
18.06.11
12:01
(3) выборка чего?
6 1Сергей
 
18.06.11
12:01
(3) мало кода
7 smaharbA
 
18.06.11
12:01
а чем выборка отличается от создатьобъект ?
8 kible
 
18.06.11
12:02
База = Новый  COMОбъект("v77.Application");
   Открыта = База.Initialize(База.RMTrade,"/D""" + ПутьКИБ + """ /M ","NO_SPLASH_SHOW");
   
   Приходник = База.CreateObject("Документ.ПриходныйКассовыйОрдер");
   Приходник.ВыбратьДокументы(НачПериода,КонецДня(КонПериода));
   НачатьТранзакцию();
   Пока Приходник.ПолучитьДокумент() = 1 Цикл
       Если Приходник.ПометкаУдаления()=1 Тогда
           Продолжить;
       КонецЕсли;
       
       ПКО = Документы.ПриходныйКассовыйОрдер.СоздатьДокумент();



ПКО.Дата = Приходник.ДатаДок;// как сюда время добавить
9 ДенисЧ
 
18.06.11
12:03
(8)
Приходник = База.CreateObject("Документ.ПриходныйКассовыйОрдер");

А это что???
10 1Сергей
 
18.06.11
12:04
восьмерошники....

в 1С7 время - это отдельное поле, строковое
11 viktor_vv
 
18.06.11
14:43
Делал так.

Функция мСформироватьДатуДок8(ладДок,лдДатаДок77)
   лчЧасы = 0 ;
   лчМинуты = 0 ;
   лчСекунды = 0 ;
   
   ладДок.ПолучитьВремя(лчЧасы,лчМинуты,лчСекунды);
   
   лсДатаИз77 = Строка(лдДатаДок77);
   лчДатаЧисло = Число(Лев(лсДатаИз77,2));
   лчДатаМесяц = Число(Сред(лсДатаИз77,4,2));
   лчДатаГод = Число(Сред(лсДатаИз77,7,4));
   
   Возврат Дата(лчДатаГод,лчДатаМесяц,лчДатаЧисло,лчЧасы,лчМинуты,лчСекунды);
КонецФункции


лдДатаДок = мСформироватьДатуДок8(Приходник.ТекущийДокумент(),Приходник.ДатаДок);
ПКО.Дата = лдДатаДок;

Вроде рабоатет.

У меня просто дата получалась сразу в запросе к семерке, потому и передавал вторым праметром.
12 viktor_vv
 
18.06.11
15:34
(11)+ Запостил, перечитал и подумал что можно и так.

   //лсДатаИз77 = Строка(лдДатаДок77);
   //лчДатаЧисло = Число(Лев(лсДатаИз77,2));
   //лчДатаМесяц = Число(Сред(лсДатаИз77,4,2));
   //лчДатаГод = Число(Сред(лсДатаИз77,7,4));
   лчДатаЧисло = День(лдДатаДок77);
   лчДатаМесяц = Месяц(лдДатаДок77);
   лчДатаГод = Год(лдДатаДок77);
13 smaharbA
 
18.06.11
15:35
а восьмерк к семерке оле по ссылке работает ?
14 viktor_vv
 
18.06.11
16:20
Да.
15 viktor_vv
 
18.06.11
16:29
Правда с выборкой не пробовал, я данные получал запросом к семерке, но вот такой вариант точно работает.

В запросе.

|Номенклатура  = Документ.НакладнаяНаОтпускОпт.асТовар ;

Далее что-то типа

ласНоменклатура77 = Запрос77.Номенклатура ;

сПолноеНаименование = ласНоменклатура77.сПолнНаименование ;

Точно работает. А там в принципе таже ссылка.
16 smaharbA
 
18.06.11
16:44
тогда проблем с получением дней месяцев годов, часов, минут и секунд (не как строк) не существует
17 smaharbA
 
18.06.11
16:45
+ я про параметры переданные по ссылке
хотя если чо есть способ передать параметры по ссылке из любой среды
18 viktor_vv
 
18.06.11
16:56
Параметром тоже передаются номрально. В (15) это я упрощенно написал.
У меня вот так примерно работает.

Процедура ВвестиНовуюНоменклатуру(пасНоменклатура77)
    сПолноеНаименование = пасНоменклатура77.сПолнНаименование ;
   
КонецПроцедуры


ласНоменклатура77 = Запрос77.Номенклатура ;

ВвестиНовуюНоменклатуру(ласНоменклатура77) ;
19 viktor_vv
 
18.06.11
16:59
(18)+ Это все на сервере.
20 smaharbA
 
18.06.11
20:24
не понял ты
21 viktor_vv
 
18.06.11
20:27
(20) Может быть :), у самого было чувство, что недопонимаю о чем ты спрашиваешь.
Программист всегда исправляет последнюю ошибку.