|
v7: 1с++ файловая. Итоги и временные таблицы | ☑ | ||
---|---|---|---|---|
0
zling
28.10.12
✎
21:48
|
через OLEDBData. У кого есть пример? Скиньте пож-та
|
|||
69
zling
29.10.12
✎
09:58
|
(67) они были скопированы из архива старой базы, переименованы
|
|||
70
Ёпрст
29.10.12
✎
09:59
|
(69) переименованы.. нафига ?
скопированы, куда ? в родную базу ? |
|||
71
zling
29.10.12
✎
10:00
|
ну да. А что не так то. Не объединять же их в одну
|
|||
72
Ёпрст
29.10.12
✎
10:02
|
(71) п..ц
Нужно было всего то, написать обычный запрос к внешней базе, используя метапарсер и ПрисоединитьМД + в этом же запросе поиметь объекты ЭТОЙ базы, синхронизируя элементы с разных баз по какому либо реквизиту (или, если это копия базы - сразу типизировать к объектам этой базы) А не городить огород с временными табличками и с каким-то нелепым переименованием и копированием файлов. |
|||
73
zling
29.10.12
✎
10:04
|
(72) обычный запрос без execscript вполне читает эти таблицы, проверял. Проблемы начинаются когда по запросу пользователя идет много union ов.
|
|||
74
zling
29.10.12
✎
10:06
|
тогда мы натыкаемся на вышеописанное ограничение дбф запросов в 1024 символа в скомпил. виде
|
|||
75
zling
29.10.12
✎
10:06
|
в таком случае я хочу поместить их во внутр. таблицу, а потом объединить
|
|||
76
zling
29.10.12
✎
10:07
|
вот тут и начинаются траблы с execscript select into cursor
|
|||
77
zling
29.10.12
✎
10:10
|
Ёпрст4, скажите плиз, как без этих апострофов?
|
|||
78
zling
29.10.12
✎
10:14
|
к настоящей (родной) таблице базы тоже самое
ТекстЗапроса="EXECSCRIPT('SELECT * INTO CURSOR TmpTable1 NOFILTER FROM ( ' |' SELECT ' |'РегПродажа_04_4.SP2222 AS Себест' |' FROM ' |' RA2228 as РегПродажа_04_4 ' |') AS WW ')"; ICommandText::Execute(): Function name is missing ). так все нормально ТекстЗапроса="EXECSCRIPT('SELECT * INTO CURSOR TmpTable1 NOFILTER FROM ( SELECT РегПродажа_04_4.SP2222 AS Себест FROM RA2228 as РегПродажа_04_4 ) AS WW ')"; (одной строкой) и так тоже (а это не родная таблица) ТекстЗапроса="EXECSCRIPT('SELECT * INTO CURSOR TmpTable1 NOFILTER FROM ( SELECT РегПродажа_04_4.SP2222 AS Себест FROM _RA2228_04 as РегПродажа_04_4 ) AS WW ')"; |
|||
79
zling
29.10.12
✎
10:18
|
опять же от амперсантов просто так избавиться не могу, ибо текст не тестового запроса не уложится в 250 символов
|
|||
80
Ёпрст
29.10.12
✎
10:22
|
http://zalil.ru/33901757
на вот , пример запроса к внешней базе с синхронизацией по коду + укладывание его во временную ТЗ. |
|||
81
Ёпрст
29.10.12
✎
10:22
|
и выкинь ты свои переименованыные файлы куда подальше.
|
|||
82
Ёпрст
29.10.12
✎
10:23
|
пользуй метапарсер и наслаждайся.
|
|||
83
zling
29.10.12
✎
10:35
|
седня не мой день :(
\_ЗАПРОСКВНЕШНЕЙБАЗЕСИНХРОНИЗАЦИЯПОКОДУ.ERT(73)}: FAILED! ICommandText::Execute(): Syntax error. |
|||
84
Ёпрст
29.10.12
✎
10:36
|
(83) покажи, какой текст запроса пихаешь
|
|||
85
Ёпрст
29.10.12
✎
10:36
|
или тупо мою поделку запустил ?
Если да, то 1cpp какой версии ? оледб, какой версии ? |
|||
86
Ёпрст
29.10.12
✎
10:38
|
||||
87
zling
29.10.12
✎
10:39
|
все из этой ветки самое свежее
|
|||
88
zling
29.10.12
✎
10:40
|
я кстати был неправ насчет описки на сайте (37)
|
|||
89
zling
29.10.12
✎
10:41
|
именно все это, и фокспро и 1с++
|
|||
90
Ёпрст
29.10.12
✎
10:43
|
Тогда моя поделка должна работать, запрос в монопольном режиме выполняешь ?
Если да, заплатка от hogik стоит ? |
|||
91
zling
29.10.12
✎
10:48
|
нет не в мономпольном, остальные выполняются. Есть какой-нить метод, прочитать версию 1с++?
|
|||
92
Ёпрст
29.10.12
✎
10:49
|
(91) ^))))
нажать на знак "?" Или меню-помощь- о программе. |
|||
93
zling
29.10.12
✎
10:59
|
интересно блин, еще раз заменил 1cpp.dll в bin на свежескачанную и ваша тестовая обработка
глОлеДБ = СоздатьОбъект("OLEDBData"); {D:\1C BASES\zzzzzzzzzzzz\EXTFORMS\_ЗАПРОСКВНЕШНЕЙБАЗЕСИНХРОНИЗАЦИЯПОКОДУ.ERT(125)}: Неудачная попытка создания объекта (OLEDBData) |
|||
94
Ёпрст
29.10.12
✎
11:04
|
(93) 1cpp Не загружена.. и всего лишь.
ЗЫ: смотри, что в каталогиИБ валяется еще и в папке пользователя. |
|||
95
zling
29.10.12
✎
11:07
|
Процедура ПриОткрытии()
Попытка Путь = КаталогИБ(); Путь = Путь + ?(Прав(Путь,1)="\","","\"); ЗагрузитьВнешнююКомпоненту(Путь+"1cpp.dll"); Сообщить("1с++ загружена"); Исключение Сообщить("не удалось загрузить 1с++"); Возврат; КонецПопытки; глОлеДБ = СоздатьОбъект("OLEDBData"); 1с++ загружена глОлеДБ = СоздатьОбъект("OLEDBData"); {D:\1C BASES\qqqqqqqqqqqqqq\EXTFORMS\_ЗАПРОСКВНЕШНЕЙБАЗЕСИНХРОНИЗАЦИЯПОКОДУ.ERT(126)}: Неудачная попытка создания объекта (OLEDBData) |
|||
96
zling
29.10.12
✎
11:08
|
regsvr32 на win 7 не выполняется
|
|||
97
zling
29.10.12
✎
11:14
|
при начале работы системы указал, все норм, версия 3.2, но обработка не выполняется Х)
|
|||
98
Ёпрст
29.10.12
✎
11:14
|
(96) Ё...
1.1cpp сто лет в обед не требует регистрации в реестре 2.судя по ошибке, 1срр не загружена |
|||
99
zling
29.10.12
✎
11:15
|
FAILED! ICommandText::Execute(): Syntax error.
|
|||
100
Ёпрст
29.10.12
✎
11:16
|
3. ЗагрузитьВнешнююКомпоненту пихать в попытку не имеет смысла - это ФУНКЦИЯ, которая возвращает, загружена ВК или нет, Исключения там никогда не будет.
|
|||
101
Ёпрст
29.10.12
✎
11:16
|
Что написано в Меню "О программе" ?
|
|||
102
1Сергей
29.10.12
✎
11:19
|
я так и не понял. База точно файловая?
|
|||
103
zling
29.10.12
✎
11:20
|
да, куда загрузить картинку лучше?
|
|||
104
Ёпрст
29.10.12
✎
11:21
|
||||
105
zling
29.10.12
✎
11:27
|
||||
106
Ёпрст
29.10.12
✎
11:28
|
И.. ?
|
|||
107
zling
29.10.12
✎
11:30
|
||||
108
zling
29.10.12
✎
11:32
|
EXECSCRIPT('SELECT * INTO CURSOR Вася NOFILTER from ( '+
' SELECT '+ ' СпрНаш.DESCR as КлиентосВЭтойбазе '+ ' ,Спр.DESCR as КлиентосВУдаленнойБазе '+ ' FROM sc134 СпрНаш '+ ' left join D:\1C bases\xxxxxxxxxxx\torg92\sc134 Спр on СпрНаш.Code = Спр.Code )as WW ') |
|||
109
Ёпрст
29.10.12
✎
11:34
|
И.. точно не в монопольном режиме ?
И точно в обеих базах есть справочник.Контрагенты ? И что пишет это ? ОлеДБКоманда.Отладка(1) ? |
|||
110
Ёпрст
29.10.12
✎
11:35
|
и точно, что установлен vfp из ссылки выше ?
|
|||
111
zling
29.10.12
✎
11:36
|
а в ссылке из майкрософта файлик vfpoledb.msm - чисто вспомогательный, или его тоже куда закидывать нужно?
|
|||
112
Ёпрст
29.10.12
✎
11:36
|
покажи вкладочку с предприятием
|
|||
113
zling
29.10.12
✎
11:36
|
(110) ну да
|
|||
114
Ёпрст
29.10.12
✎
11:36
|
что значит чисто вспомогательный ?!
Это установщик |
|||
115
zling
29.10.12
✎
11:37
|
msi - установщик
|
|||
116
Ёпрст
29.10.12
✎
11:37
|
VFPOLEDBSetup.msi нужен вот этот.. + рестарт компа потом
|
|||
117
zling
29.10.12
✎
11:39
|
http://s1.ipicture.ru/uploads/20121029/G3UgJPFH.png предприятие. Ща перезагружусь
|
|||
118
zling
29.10.12
✎
11:54
|
все тож самое
FAILED! ICommandText::Execute(): Syntax error. |
|||
119
Ёпрст
29.10.12
✎
11:56
|
не верю.
:) |
|||
120
Ёпрст
29.10.12
✎
11:56
|
проверил на 2008 - усё работате
|
|||
121
zling
29.10.12
✎
11:56
|
я тоже :)
|
|||
122
Ёпрст
29.10.12
✎
11:57
|
нет 7-ки под рукой, думаю, там тоже усё работате.
Без помещения во временную ТЗ работает ? Если да, то права на запись в каталогИБ есть ? |
|||
123
zling
29.10.12
✎
11:57
|
грю не мой день :) у меня ща бубен отрастет х)
|
|||
124
Ёпрст
29.10.12
✎
11:57
|
именно туда "складываются" псевдо-временные файлы.
|
|||
125
zling
29.10.12
✎
12:00
|
значение сортировки в самой базе как нибудь влияют?
|
|||
126
Ёпрст
29.10.12
✎
12:03
|
влияет.. но в данном запросе - нет
|
|||
127
Ёпрст
29.10.12
✎
12:04
|
вот так то хоть работает ?
//СоздатьВременнуюТаблицу(ТекстЗапроса,"Вася"); //Возврат ОлеДБКоманда.ВыполнитьИнструкцию("select * from Вася"); Возврат ОлеДБКоманда.ВыполнитьИнструкцию(ТекстЗапроса); |
|||
128
Ёпрст
29.10.12
✎
12:05
|
+ убери из текста запроса все комментарии (то что с -- )
|
|||
129
zling
29.10.12
✎
12:06
|
ща
|
|||
130
zling
29.10.12
✎
12:08
|
ТЗ = ОлеДБКоманда.ВыполнитьИнструкцию("EXECSCRIPT('SELECT * INTO "+ТипТабл+" "+
ИмяВременнойТаблицы+" "+ДобПар+" from (SELECT СпрНаш.DESCR as КлиентосВЭтойбазе ,Спр.DESCR as КлиентосВУдаленнойБазе FROM $Справочник.Контрагенты СпрНаш left join База2.@Справочник.Контрагенты Спр on СпрНаш.Code = Спр.Code) as WW ') "); ошибка уже другая CommandText::Execute(): File '$справочник.контрагенты' does not exist. |
|||
131
Ёпрст
29.10.12
✎
12:09
|
(130) ну круто, в базе нет справочник.Контрагенты у тебя.
|
|||
132
Ёпрст
29.10.12
✎
12:09
|
и (127) проверил ?
|
|||
133
zling
29.10.12
✎
12:11
|
так
//СоздатьВременнуюТаблицу(ТекстЗапроса,"Вася"); //Возврат ОлеДБКоманда.ВыполнитьИнструкцию("select * from Вася"); Возврат ОлеДБКоманда.ВыполнитьИнструкцию(ТекстЗапроса); и без коментариев не работает |
|||
134
zling
29.10.12
✎
12:11
|
без коменнтов в тексте запроса
|
|||
135
zling
29.10.12
✎
12:12
|
ОлеДБКоманда = глОлеДБ.СоздатьКоманду();
ТекстЗапроса = " |SELECT | СпрНаш.DESCR as КлиентосВЭтойбазе | ,Спр.DESCR as КлиентосВУдаленнойБазе |FROM $Справочник.Контрагенты СпрНаш |left join База2.@Справочник.Контрагенты Спр on СпрНаш.Code = Спр.Code |"; глПарсерВторойБазы(ТекстЗапроса,"База2",ПутьКБазе2); ТекстЗапроса=СтрЗаменить(ТекстЗапроса,"*",":"); //СоздатьВременнуюТаблицу(ТекстЗапроса,"Вася"); //Возврат ОлеДБКоманда.ВыполнитьИнструкцию("select * from Вася"); Возврат ОлеДБКоманда.ВыполнитьИнструкцию(ТекстЗапроса); FAILED! ICommandText::Execute(): Syntax error. |
|||
136
zling
29.10.12
✎
12:13
|
спр.Контрагенты есть
|
|||
137
Ёпрст
29.10.12
✎
12:13
|
хрень какая то, а так ?
Возврат ОлеДБКоманда.ВыполнитьИнструкцию("select * from $Справочник.Контрагенты"); |
|||
138
zling
29.10.12
✎
12:14
|
(137) выполняет
|
|||
139
zling
29.10.12
✎
12:15
|
win 7 home edition - глючная скатина, может из-за нее?
|
|||
140
Ёпрст
29.10.12
✎
12:16
|
а так ?
ТекстЗапроса = " |SELECT * |from База2.@Справочник.Контрагенты"; глПарсерВторойБазы(ТекстЗапроса,"База2",ПутьКБазе2); Возврат ОлеДБКоманда.ВыполнитьИнструкцию(ТекстЗапроса); |
|||
141
Ёпрст
29.10.12
✎
12:17
|
(139) надеюсь, 1с-ина у тебя не портабл версия ?!
|
|||
142
Ёпрст
29.10.12
✎
12:17
|
она не дружит с вк
|
|||
143
zling
29.10.12
✎
12:17
|
сетевая все компоненты
|
|||
144
zling
29.10.12
✎
12:18
|
портабл - это что?
|
|||
145
zling
29.10.12
✎
12:19
|
Command contains unrecognized phrase/keyword
|
|||
146
Ёпрст
29.10.12
✎
12:20
|
(144) это отвязанная от винды версия платформы без установщика
|
|||
147
zling
29.10.12
✎
12:20
|
щас типовуху скачаю откуда-нибудь
|
|||
148
Ёпрст
29.10.12
✎
12:21
|
а так, что пишет ?
ТекстЗапроса = " |SELECT * |from База2.@Справочник.Контрагенты"; глПарсерВторойБазы(ТекстЗапроса,"База2",ПутьКБазе2); ОлеДБКоманда.Отладка(1); Возврат ОлеДБКоманда.ВыполнитьИнструкцию(ТекстЗапроса); |
|||
149
zling
29.10.12
✎
12:24
|
SELECT *
from D:\1C bases\xxxxxxxxxxx\torg92\sc134 Возврат ОлеДБКоманда.ВыполнитьИнструкцию(ТекстЗапроса); {D:\1C BASES\FIESTA-2010\FIESTA-2010\EXTFORMS\_ЗАПРОСКВНЕШНЕЙБАЗЕСИНХРОНИЗАЦИЯПОКОДУ.ERT(119)}: FAILED! ICommandText::Execute(): Command contains unrecognized phrase/keyword. |
|||
150
Salimbek
29.10.12
✎
12:27
|
(149) Все дело в пробеле пути к базе?
|
|||
151
Ёпрст
29.10.12
✎
12:28
|
(150) скорее всего
|
|||
152
zling
29.10.12
✎
12:28
|
(150) кстати возможно, а можно как нибудь обойти, типа []?
|
|||
153
Ёпрст
29.10.12
✎
12:29
|
можно попробовать в [] взять такой путь к табличке.
|
|||
154
Ёпрст
29.10.12
✎
12:29
|
(152) пробуй.
|
|||
155
zling
29.10.12
✎
12:33
|
да, выполнилась )))
|
|||
156
Ёпрст
29.10.12
✎
12:34
|
Вот, теперь с временной тоже должно работать..
ну и.. можешь хоть к 10 базам в одном запросе обращаться |
|||
157
zling
29.10.12
✎
12:37
|
щас
|
|||
158
zling
29.10.12
✎
12:39
|
ТЗ = ОлеДБКоманда.ВыполнитьИнструкцию("EXECSCRIPT('SELECT * INTO "+ТипТабл+" "+
{D:\1C\F2010\_ЗАПРОСКВНЕШНЕЙБАЗЕСИНХРОНИЗАЦИЯПОКОДУ.ERT(73)}: FAILED! ICommandText::Execute(): Cannot open file d:\1c\f2010\f2010\sc134.dbf. |
|||
159
Ёпрст
29.10.12
✎
12:40
|
(158) монопольно выполняешь ?
:) |
|||
160
zling
29.10.12
✎
12:40
|
все нормально!!!
|
|||
161
zling
29.10.12
✎
12:41
|
ура!!!
|
|||
162
zling
29.10.12
✎
12:41
|
Ребята, спасибо большое.
|
|||
163
zling
29.10.12
✎
12:43
|
могу на пиво/морожное на яндекс или веб мани немного кинуть, хотя конечно Ёпрст4 и kiruha потратили время намного больше. Кидайте реквизиты :)
|
|||
164
zling
29.10.12
✎
12:46
|
Salimbek тоже спасибо :)
|
|||
165
zling
29.10.12
✎
12:47
|
И КонецЦикла
|
|||
166
Ёпрст
29.10.12
✎
12:48
|
в личке всё есть
|
|||
167
zling
29.10.12
✎
12:50
|
ок
|
|||
168
Salimbek
29.10.12
✎
13:52
|
(164) На здоровье...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |