ДАТА по COM из 7.7 в 8.3
подключаюсь с самописной 7.7 к БП 3.1
вообщем все замечательно, нахожу контрагентов по ИНН, номенклатуру по коду. если чего нет создаю, например контрагента по ИНН:
вообщем все хорошо, и документ проводится с движениями
но когда дошло дело до дат ничего сделать не могу buh.ДАТА или buh.Date не работает (Поле агрегатного объекта не обнаружено Дата или Date), buh.НачалоДня и buh.КонецДня тоже не работает (Поле агрегатного объекта не обнаружено)
пробовал buh.ValueToStringInternal получаю {"D","20190205000000"}
никак не пойму как работать с датой+время в 7.7, сейчас интересует в запросе установить
ну и вообще интересует как 8 кормить из 7.7 дату со временем и почему buh.РежимЗаписиДокумента.Проведение работает, а buh.НачалоДня(ДатаДок) не работает???
Параметры = "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.НачалоДня(ДатаДок) не работает???
По теме из базы знаний
- Выгрузка из Зарплаты 3.1 в Бухгалтерию 7.7
- Сверки и переносы документов между базами 7.7 и 8, исправление расхождений. Реализации. Поступления. Корректировки отгрузки, поступления. Счета-фактуры выданные, полученные; исправленные выданные и полученные. COM-объект 1С8 (ОФ)
- Перенос (и исправление) номенклатуры и единиц из (по) 7.7 в 8.3 и из 8.3 в 7.7. COM-объект 8.3 (ОФ)
- Криптография: внешняя компонента для 1С 7.7
- COMNativeWrapper, COM-Диспетчер Native-компонент 1С (Аддонов), совместимый со всеми версиями 1С (7.7, 8.0, 8.1, 8.2, 8.3).
Ответы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
(13) Но вам дата нужна в запросе или в выборке? Параметром в запрос вы ее со временем передать не сможете.
В запросе вы хотите получить текст вида:
ГДе ДокументРасходнаянакладная.Дата Между (НачалоДНя(ДатаНачала)) и КонецДня(ДатаКонца))
А при ком-соединении желательно писать такое
Где ДОкумент.РасходнаяНакладная между НачалоДня('01.12.18') и конецдня('31.12.18')
Или Где ДОкумент.РасходнаяНакладная между '01.12.18 00:00:00' и '31.12.18 23:59:59'
Т.е. используется текстовый вариант записи вместо параметров.
В запросе вы хотите получить текст вида:
ГДе ДокументРасходнаянакладная.Дата Между (НачалоДНя(ДатаНачала)) и КонецДня(ДатаКонца))
А при ком-соединении желательно писать такое
Где ДОкумент.РасходнаяНакладная между НачалоДня('01.12.18') и конецдня('31.12.18')
Или Где ДОкумент.РасходнаяНакладная между '01.12.18 00:00:00' и '31.12.18 23:59:59'
Т.е. используется текстовый вариант записи вместо параметров.
(14)в параметре я уже понял что не смогу.но в запросе хоть мне и нужно день.но мне нужно день который в 7.7 как дата документа. я уже понял что с 7.7 в 8 даты "хромают" попробую в запросе преобразовать.как что получиться отпишусь
Где ДОкумент.РасходнаяНакладная между НачалоДня('01.12.18') и конецдня('31.12.18')
Или Где ДОкумент.РасходнаяНакладная между '01.12.18 00:00:00' и '31.12.18 23:59:59'
по универсальнее бы.....
Где ДОкумент.РасходнаяНакладная между НачалоДня('01.12.18') и конецдня('31.12.18')
Или Где ДОкумент.РасходнаяНакладная между '01.12.18 00:00:00' и '31.12.18 23:59:59'
по универсальнее бы.....
Из 7.7. наверняка можно выполнить запрос к веб сервису, используя объект интернет експлорер, но в 8ке должен быть вебсервис, который может возвращать json. В файловой версии вебсервис работает? И поможет ли это сделать решение более универсальным- не знаю.
Возможно конвертация данных 2 наиболее подходящий вариант. Для 7.7 тоже есть обработчик правил обмена и загрузка файлов этого формата. Я им не пользовалась, поскольку кд 2 вышла позже, но вам оно поможет, если вы хотите универсальный инструмент.
Возможно конвертация данных 2 наиболее подходящий вариант. Для 7.7 тоже есть обработчик правил обмена и загрузка файлов этого формата. Я им не пользовалась, поскольку кд 2 вышла позже, но вам оно поможет, если вы хотите универсальный инструмент.
Вакансии
Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)