ДАТА по COM из 7.7 в 8.3

1. serq82 8 07.02.19 12:41 Сейчас в теме
подключаюсь с самописной 7.7 к БП 3.1
Параметры = "Srvr=""*******"";Ref=""*******"";Usr=""*******"";Pwd=""*******"";";
	
	V83 = СоздатьОбъект("V83.COMConnector"); 
    
	Попытка
		buh= V83.Connect(Параметры);
		Возврат;
	Исключение
		Предупреждение(ОписаниеОшибки());ы"
	КонецПопытки;
Показать

вообщем все замечательно, нахожу контрагентов по ИНН, номенклатуру по коду. если чего нет создаю, например контрагента по ИНН:
Контрагент = buh.Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", ИНН);
	Если Контрагент.ИНН = "" Тогда
		НовыйКонтрагент = buh.Справочники.Контрагенты.СоздатьЭлемент();
		Если СтрДлина(ИНН) = 10 Тогда
			НовыйКонтрагент.ЮридическоеФизическоеЛицо = buh.Перечисления.ЮридическоеФизическоеЛицо.ЮридическоеЛицо;
			РеквизитыКонтрагента = buh.РаботаСКонтрагентами.РеквизитыЮридическогоЛицаПоИНН(ИНН);
		ИначеЕсли СтрДлина(ИНН) = 12 Тогда
			НовыйКонтрагент.ЮридическоеФизическоеЛицо = buh.Перечисления.ЮридическоеФизическоеЛицо.ФизическоеЛицо;
			РеквизитыКонтрагента = buh.РаботаСКонтрагентами.РеквизитыПредпринимателяПоИНН(ИНН);
		КонецЕсли;
		buh.ЗаполнитьЗначенияСвойств(НовыйКонтрагент, РеквизитыКонтрагента);
		Попытка
			НовыйКонтрагент.Записать();
		Исключение
			Сообщить(ОписаниеОшибки());
		КонецПопытки;
Показать

вообщем все хорошо, и документ проводится с движениями
ДокументРеализации.Записать(buh.РежимЗаписиДокумента.Проведение);

но когда дошло дело до дат ничего сделать не могу buh.ДАТА или buh.Date не работает (Поле агрегатного объекта не обнаружено Дата или Date), buh.НачалоДня и buh.КонецДня тоже не работает (Поле агрегатного объекта не обнаружено)
пробовал buh.ValueToStringInternal получаю {"D","20190205000000"}
никак не пойму как работать с датой+время в 7.7, сейчас интересует в запросе
Запрос = buh.NewObject("Запрос");
установить
Запрос.УстановитьПараметр("Дата1", buh.НачалоДня(ДатаДок));
	Запрос.УстановитьПараметр("Дата2", buh.КонецДня(ДатаДок));

ну и вообще интересует как 8 кормить из 7.7 дату со временем и почему buh.РежимЗаписиДокумента.Проведение работает, а buh.НачалоДня(ДатаДок) не работает???
По теме из базы знаний
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
15. acanta 08.02.19 15:58 Сейчас в теме
(1)
ну и вообще интересует как 8 кормить из 7.7 дату со временем и почему buh.РежимЗаписиДокумента.Проведение работает, а buh.НачалоДня(ДатаДок) не работает???


Не знаю как сейчас, но было так примерно:
buh.EvalExpr("НачалоДня("+апостроф+ДатаДок+апостроф+")"")
2. oleg-x 26 07.02.19 14:01 Сейчас в теме
Запрос.УстановитьПараметр("Дата1", НачалоДня(ДатаДок));
Запрос.УстановитьПараметр("Дата2", КонецДня(ДатаДок));

Попробуй так, не понятно зачем эта приставка buh.
5. serq82 8 07.02.19 16:01 Сейчас в теме
(2)НачалоДня нет в 7.7, по buh это com соединение
3. DenisCh 07.02.19 14:36 Сейчас в теме
Попробуй строкой, через формат
6. serq82 8 07.02.19 16:01 Сейчас в теме
(3)Поле агрегатного объекта не обнаружено Дата
4. kumi2012 102 07.02.19 14:44 Сейчас в теме
Попробуй работоспособность функции buh.Дата(Год, Месяц, День, Час, Минута, Секунда).
7. oleg-x 26 07.02.19 16:16 Сейчас в теме
Тогда как в 4 пробуйте, так как дата преобразуется в строку.
8. acanta 07.02.19 16:30 Сейчас в теме
Дата и время кавычка двойная +апостроф+Формат(ДатаДок,"ДДДММГГГГ")+пробел+ВремяСтрокой+апостроф+кавычка двойная.
9. serq82 8 07.02.19 18:08 Сейчас в теме
(8) 1) ' + Формат(НОРН.ДатаДок,"ДДДММГГГГ") + " " + "00:00:33" + '
(4) 2) "" + ' + Формат(НОРН.ДатаДок,"ДДДММГГГГ") + " " + "00:00:33" + ' + ""
в первом случае ' . . '
во втором " . . "
я пробовал и строковой делать и с апострофами
10. kumi2012 102 07.02.19 19:15 Сейчас в теме
(9) А buh.Дата(Год, Месяц, День, Час, Минута, Секунда) с числами?
11. serq82 8 07.02.19 19:26 Сейчас в теме
(10)
buh.Дата(Год, Месяц, День, Час, Минута, Секунда)

ДокументРеализации.Дата = buh.Дата(2019, 02, 7, 00, 00, 33);
{E:\2019\ВЫГРУЗКАЧЕРЕЗСОМ.ERT(221)}: Поле агрегатного объекта не обнаружено (Дата)
12. user705522_constantin_h 35 07.02.19 19:42 Сейчас в теме
(11)То ли я дурак, то ли лыжи не едут. buh— это же V83.Connect, откуда там дата? Дата— это функция.
ДокументРеализации.Дата = Дата(2019, 02, 7, 00, 00, 33);
13. serq82 8 07.02.19 20:23 Сейчас в теме
14. acanta 08.02.19 14:52 Сейчас в теме
(13) Но вам дата нужна в запросе или в выборке? Параметром в запрос вы ее со временем передать не сможете.

В запросе вы хотите получить текст вида:

ГДе ДокументРасходнаянакладная.Дата Между (НачалоДНя(ДатаНачала)) и КонецДня(ДатаКонца))

А при ком-соединении желательно писать такое

Где ДОкумент.РасходнаяНакладная между НачалоДня('01.12.18') и конецдня('31.12.18')

Или Где ДОкумент.РасходнаяНакладная между '01.12.18 00:00:00' и '31.12.18 23:59:59'

Т.е. используется текстовый вариант записи вместо параметров.
16. serq82 8 08.02.19 21:27 Сейчас в теме
(14)в параметре я уже понял что не смогу.но в запросе хоть мне и нужно день.но мне нужно день который в 7.7 как дата документа. я уже понял что с 7.7 в 8 даты "хромают" попробую в запросе преобразовать.как что получиться отпишусь
Где ДОкумент.РасходнаяНакладная между НачалоДня('01.12.18') и конецдня('31.12.18')
Или Где ДОкумент.РасходнаяНакладная между '01.12.18 00:00:00' и '31.12.18 23:59:59'
по универсальнее бы.....
17. acanta 08.02.19 23:57 Сейчас в теме
РасходнаяНакладная.Дата между .....
Передавать между соединениями можно только базовые типы.
18. acanta 09.02.19 00:01 Сейчас в теме
Вы можете сделать обработку на 8 ке, которая будет вызываться в ком.соединении, получать на вход данные 7ки , компоновать такой запрос как вам требуется и выкладывать файл или возвращать таблицу с данными.
19. acanta 09.02.19 00:19 Сейчас в теме
Из 7.7. наверняка можно выполнить запрос к веб сервису, используя объект интернет експлорер, но в 8ке должен быть вебсервис, который может возвращать json. В файловой версии вебсервис работает? И поможет ли это сделать решение более универсальным- не знаю.
Возможно конвертация данных 2 наиболее подходящий вариант. Для 7.7 тоже есть обработчик правил обмена и загрузка файлов этого формата. Я им не пользовалась, поскольку кд 2 вышла позже, но вам оно поможет, если вы хотите универсальный инструмент.
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)