Форум: "Начинающим";
Текущий архив: 2009.03.29;
Скачать: [xml.tar.bz2];
Вниз1C и Delphi 7 Найти похожие ветки
← →
Allizar © (2009-02-05 15:54) [0]Штудирую пособие о совместной работе указанных приложений. Создал учебный пример: запускается рабочая база и считывается значения справочника. Код компилируется, но при запуске приложения и выполнении следующей процедуры выдается ошибка о несовпадении типов. Причем у автора книги приложение работает, но, когда я пытаюсь скомпилировать им же созданные файлы, компиляция не проходит из-за синтаксической ошибки. Может, его приложение написано в более старой версии? Вообщем, не знаю.
Код
Код:
procedure TForm1.Button2Click(Sender: TObject);
var OleSklad: OleVariant;
begin OleSklad:=Unassigned;
ListBox1.Items.Clear;
if not VarIsEmpty(Ole1C) then begin OleSklad:=Ole1C.CreateObject("Справочник."+Edit3.Text);
if not VarIsEmpty(OleSklad) then begin
if OleSklad.ВыбратьЭлементы()>0 then begin
while OleSklad.ПолучитьЭлемент()>0 do begin ListBox1.Items.Add(Trim(OleSklad.Код)+" "+Trim(OleSklad.Наименование)); Application.ProcessMessages;
end;
end;
end;
end;
OleSklad:=Unassigned;
end;
← →
Сергей М. © (2009-02-05 15:57) [1]
> выдается ошибка о несовпадении типов
На какой строчке ?
← →
Сергей М. © (2009-02-05 15:59) [2]
> я пытаюсь скомпилировать им же созданные файлы, компиляция
> не проходит из-за синтаксической ошибки. Может, его приложение
> написано в более старой версии? Вообщем, не знаю
И не узнаешь никогда - ты же даже не почесался выяснить причину
← →
Jeer © (2009-02-05 16:21) [3]
> Причем у автора книги приложение работает,
Вот к нему и вопросы.
← →
tesseract © (2009-02-05 16:22) [4]У тебя tStringList - ANSI строка, а 1С возвращает WideString (в XP по крайней мере под 98 не смотрел).
← →
Anatoly Podgoretsky © (2009-02-05 16:23) [5]
> И не узнаешь никогда - ты же даже не почесался выяснить
> причину
И пусть радуется, а вот когда испортит базу, то будет не до радости.
← →
Anatoly Podgoretsky © (2009-02-05 16:28) [6]> Jeer (05.02.2009 16:21:03) [3]
У Архангельского тоже потоки работаю, но сколько горя у читателей.
← →
Anatoly Podgoretsky © (2009-02-05 16:34) [7]Это не может компилировать в Д7 - русские буквы в идентификаторах недопустимы.
← →
Сергей М. © (2009-02-05 16:38) [8]
> Anatoly Podgoretsky © (05.02.09 16:34) [7]
Это-то как раз будет успешно скомпилировано.
А вот что там у автора книги творится - одним авторам (книги и этого топика) только и известно.
← →
Allizar © (2009-02-05 16:40) [9]>И пусть радуется, а вот когда испортит базу, то будет не до радости.
Я работаю с копией.
>Это не может компилировать в Д7 - русские буквы в идентификаторах недопустимы.
Код компилируется. А вот приложение не работает.
← →
tesseract © (2009-02-05 16:43) [10]
> Это не может компилировать в Д7 - русские буквы в идентификаторах
> недопустимы.
И компилируется и работает под XP. Где-то у меня был пример перебора метаданных в D7. Там всё равно выходит скрытый вызов iDispatch - а ему сугубо побарабану какие там символы.
← →
Сергей М. © (2009-02-05 16:45) [11]
> Allizar © (05.02.09 16:40) [9]
> А вот приложение не работает
Это мы уже поняли и охотно верим. Долго ты еще будешь нас в этом убеждать ?)
На вопрос в [1] когда сподобишься ответить ?
← →
Allizar © (2009-02-05 16:52) [12]>На вопрос в [1] когда сподобишься ответить ?
На строчке:
if OleSklad.ВыбратьЭлементы()>0 then begin
← →
Сергей М. © (2009-02-05 17:08) [13]
> Allizar © (05.02.09 16:52) [12]
А так
OleSklad.ВыбратьЭлементы(0); // <--
while OleSklad.ПолучитьЭлемент()>0 do
..
?
← →
Сергей М. © (2009-02-05 17:13) [14]Вообще процитируй сюда фрагмент стандартной одноэсной справки к методу ВыбратьЭлементы..
У меня нет под рукой одноэсины, гадать нет желания
← →
tesseract © (2009-02-05 17:19) [15]
> У меня нет под рукой одноэсины, гадать нет желания
Там по умолчанию значение. Насколько я помню вызывать такие функции желательно не напрямую, а через EvalExpr.
← →
Allizar © (2009-02-05 17:23) [16]
> А так
>
> OleSklad.ВыбратьЭлементы(0); // <--
> while OleSklad.ПолучитьЭлемент()>0 do
> ..
>
> ?
Получилось!!!Ну и OleSklad.ПолучитьЭлемент(0) вместо соответствующей строчки.
Спасибо!!!
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2009.03.29;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.053 c