как из Екселя вызвать обработку в 1С? #366609


#0 by колодина
спасибо за подсказки
#1 by Господин ПЖ
всегда пожалуйста
#2 by колодина
а более развернуто?
#3 by Господин ПЖ
я думал что ты решила вопрос и благодаришь форум...
#4 by dk
опять хочешь готовое решение :) в поиске была?
#5 by колодина
нет, не решила еще... а ты знаешь как это сделать? расскажи тогда
#6 by dk
1с вызвать по ole
#7 by dk
для :)
#8 by колодина
по оле - не хочу... хочу по сом-объекту запускать обработку. а вот это сделать из екселя - не знаю...
#9 by колодина
нужно сказать, что вообще не знаю как запустить на выполнение обработку по сом-объекту...
#10 by Господин ПЖ
в хелпе же есть: Dim cntr As Object Dim trade As Object Dim Товар As Object Группа.Записать N = 100 'Количество строк в документе For Count = 1 To N
#11 by колодина
я не из 1С к екселю обращаюсь, замететь... а наоборот - из екселя к 1с. а вот как можно сделать из обработки 8-шной хранимую процедуру на скуле?
#12 by Господин ПЖ
заметь на чем написано... и что вызывается... >>обработки 8-шной хранимую процедуру на скуле покурить ADO, на Мисте или у Михайлова в книжке
#13 by borik
Через ADO.
#14 by колодина
да поняла.... мне бы хотелось написать обработочку, которая бы вызывалась из екселя просто из макроса....
#15 by колодина
+ чтобы в екселе не лазать по справочникам и регистрам... а просто - запустить обработку и получить результат.
#16 by Рэйв
Сделай в обработке экспортную функцию, вызывай ее через точку,делай все что надо и возвращай в эксель ввиде ТЗ
#17 by колодина
да, посмотрела... все вроде понятно. всем спасибо.
#18 by колодина
ругается собака... в 8-ке сделала обработку, в ней  функция returndate экспорт. Sub Excel_to_trade Dim cntr As Object Dim trade As Object Dim Товар As Object
#19 by butterbean
и где тут обработка???
#20 by колодина
а вот эта как раз - Set товар = trade.returndate ее вызов. обработка - в базе 1с, к которой я подцепляюсь. причем подцепляюсь нормально - могу справочник перебирать например...
#21 by Господин ПЖ
ну а где вызов обработки то? DataProcessors
#22 by butterbean
где обращение к твоей обработке?? или оно само должно угадать из какой обработки функцию тащить??
#23 by колодина
а как обработку вызвать?
#24 by Господин ПЖ
вероятно
#25 by butterbean
как-то так: trade.Обработки.ТвояОбработка.Создать.returndate
#26 by колодина
Dim cntr As Object ругается.... как-то надо по-другому сделать... Dim trade As Object Dim Товар As Object Dim обработка As Object пробовала обработку как объект создавать - не фига не получается...
#27 by колодина
подниму...
#28 by колодина
оказывается, мой вопрос - самый легкий... вот зараза
#29 by dk
trade.DataProcessors.связьсексел.returndate ? ну и текст ругани
#30 by колодина
Object doesn't support this property or method (Error 438)
#31 by dk
связьсексел переименуй в конфе в латиницу
#32 by колодина
Dim cntr As Object Dim trade As Object Dim Товар As Object Dim обработка As Object
#33 by Рэйв
Может обработку по-латински обозвать надо?
#34 by колодина
все то же Sub Excel_to_trade Dim cntr As Object Dim trade As Object Dim товар As Object
#35 by dk
хотя excel вроде работал с кириллицей, а вот vbs ни в какую
#36 by колодина
если кто-то делает - дайте кода кусочек плиз...
#37 by dk
trade.DataProcessors.thread.returndate
#38 by dk
или это функция?
#39 by колодина
если без равенства - то визуал басик ошибку дает
#40 by колодина
это фунция - возвращает ТЗ
#41 by dk
хотя это уже просто гадание :)
#42 by колодина
и так делала... ну вот зараза - когда задала вопрос, создалось впечатление  у меня, что какую-то простейшую вещь спрашиваю... типа - все умеют это делать....
#43 by колодина
ну кто делает такую штуку - покажите кусок кода плиз...
#44 by колодина
попробовала функцию объявить в модуле приложения со словом "экспорт" - хрен редьки не слаще...
#45 by Рэйв
А в обработке функция в модуле объекта лежит?
#46 by колодина
да... уже пробую и в модуль внешнего соединения положить... хотя тогда по-другому ругается.... Object variable or With block variable not set (Error 91)
#47 by колодина
вот так отработало - и функция в модуле внешнего соединения. Sub Excel_to_trade Dim cntr As Object Dim trade As Object Dim Товар As Object
#48 by колодина
хотя только ошибки не возникло - а чего передалось - не знаю... ну хотя бы так
#49 by Рэйв
Ну вот:)  А в модуле внешнего соединения вызывай обработку и --вуаля!
#50 by колодина
аха.... вот только никто об этом не сказал мне... зато теперь - и вы будете знать как это делать, господа...
#51 by Рэйв
"спасибо за подсказки" (С) :))
#52 by колодина
уху.... вот теперь надо в бейсике разбирать то что получила из 1с...
#53 by колодина
не... у таблицы значений бейсик не хочет опознавать методы....
#54 by Рэйв
методы все применимы, если ТЗ вернула.  Правда только простые типы пониматься будут (ну это как обычно при СОМ)    Next ну и т.д
#55 by Рэйв
странно..А на аглицком?
#56 by колодина
буду пробовать счас... по индексу - не хочет выбирать собак... т.е. товар[0] - плюется
#57 by колодина
заработало.... уфффффффффф
#58 by Рэйв
Правильно плюется..Оно по "[]" ожидает что это массив
#59 by Господин ПЖ
так работает: соответственно в конфиге обработка Test с функцией экспортной в объекте Ret
#60 by колодина
ну у меня уже все получилось....
#61 by Господин ПЖ
ломай и переделывай... трахаца так трахатца
#62 by колодина
а может еще и сломаю.... а у тебя что ли не в модуле внешнего соединения обработка?
#63 by Рэйв
Он создает объект напрямую
#64 by Господин ПЖ
обработки доступны через Com, но без интерфейсных объектов. П.э. можно загнать нужное в модуль объекта и вызывать
#65 by Господин ПЖ
так тоже работает Set a = trade.Newobject("DataProcessorObject.Test") MsgBox(m)
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С