Ошибка circular datalinks are not allowed

pavel_kr

1

04.01.2010, 17:07. Показов 7836. Ответов 4


Студворк — интернет-сервис помощи студентам

В Borland C++6
строка
Form1->DataSource1->DataSet = Form1->Query1;
вызывает ошибку:
Project Project2.exe raised exeption class EDatabase Error with message ‘DataSource1: Circular datalinks are
not allowed’. Process stopped…

Заранее спасибо.

Миниатюры

Circular datalinks are not allowed
 

Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

04.01.2010, 17:07

4

99 / 99 / 19

Регистрация: 29.12.2009

Сообщений: 204

04.01.2010, 17:11

2

м.б. Form1->Query1->DataSource указан Form1->DataSource1? так делать не надо



0



pavel_kr

04.01.2010, 18:13

3

А как надо? Это код из книжки.

99 / 99 / 19

Регистрация: 29.12.2009

Сообщений: 204

04.01.2010, 18:35

4

приведи весь код, посмотрим, что там не так, и как надо



0



0 / 0 / 0

Регистрация: 22.06.2015

Сообщений: 1

22.06.2015, 16:36

5

Цитата
Сообщение от pavel_kr
Посмотреть сообщение

В Borland C++6
строка
Form1->DataSource1->DataSet = Form1->Query1;
вызывает ошибку:
Project Project2.exe raised exeption class EDatabase Error with message ‘DataSource1: Circular datalinks are
not allowed’. Process stopped…

Заранее спасибо.

Выбери Query1 (в «обжект инспекторе» или на форме) и найди в его свойствах DataSource, там должно быть пусто. Если там записано DataSource1, то возникает ошибка.



0



 
Kostafey ©
 
(2007-04-04 22:23)
[0]

Выдает при изменении ширины поля в сетке (runtime).

Если сетку заново сделать — бесполезно.
ADODataSet новый сделать внутри DataModule — то же самое.
ADODataSet новый сделать на той же форме где и сетка — все работает хорошо.

2 часа разбираюсь не могу понять почему так?


 
LA33
 
(2007-04-04 22:25)
[1]

У сети какая ячея?


 
LA33
 
(2007-04-04 22:25)
[2]

Интерисует размер, подозреваю, что сороковка…


 
Kostafey ©
 
(2007-04-04 22:29)
[3]

Ячейки разные. В среднем около 20.


 
LA33
 
(2007-04-04 22:34)
[4]

Kostafey ©   (04.04.07 22:29) [3]

У рыбнадзора справки все взял? А то там в разные периоды, разные проблемы могут быть.


 
Kostafey ©
 
(2007-04-04 22:34)
[5]

Вообще история болезни такая.
Сначала понаделал для сетки колонок с привязками к полям датасета.
(это для того, чтобы задать DisplayLabel и DisplayWidth)
Потом думаю, зачем ерундой заниматься. Сделал у датасета TXXXFields
для всех полей таблицы. И в инх уже и задавал DisplayLabel и DisplayWidth.
А в сетке все колонки удалил.
Вот с тех пор и пошли такие ошибки как пытаешься иземнить ширину колонки.

Я даже не поленился все то же самое в том же порядке проделать для пустого проекта
с нуля — не возникает такой ошибки…


 
Kostafey ©
 
(2007-04-04 22:37)
[6]

Добавляю в сетку колонки — ошибка исчезает.
Правда мне это колонки нужны сейчас как летом валенки.

Вот еще что смешно: делаю в в этом же основном проекте новую форму
на ней сетку. Сеткой подключаюсь к дому же датасету — та же самя ошибка
WTF!


 
LA33
 
(2007-04-04 22:38)
[7]

:))


 
Kostafey ©
 
(2007-04-04 22:38)
[8]

> [2] LA33   (04.04.07 22:25)

Ну что вы с сеткой возитесь.
Удочкой слабо чтоль?


 
LA33
 
(2007-04-04 22:41)
[9]

Что за сетка? какие колонки? какая рыба? какая музыка?
Вы сами себе на уме (видимо творческий захлеб). Ну хоть, какой компонент эта сетка, скажите :)))


 
Kostafey ©
 
(2007-04-04 22:47)
[10]

> [9] LA33   (04.04.07 22:41)

:))))))))))))))))))))
Мде есть маленько с 11 часов за компом.

Сетка это TDBGrid.
Колонки это TColumn.


 
LA33
 
(2007-04-04 22:53)
[11]

Kostafey ©   (04.04.07 22:47) [10]
> [9] LA33   (04.04.07 22:41)
:))))))))))))))))))))
Мде есть маленько с 11 часов за компом.
Сетка это TDBGrid.
Колонки это TColumn.

Я с 1-часа ночи, сегодня, релиз выпускали, часов в 21 выпустили, пивко попиваем. Про TDBGrid ничего не скажу, т.к. использую DevExpress`овские компоненты.

А вот про сеть не сдержался :))

PS: я не оффтопил(offtop), я упал(up).
:)


 
Kostafey ©
 
(2007-04-04 22:56)
[12]

Не я просто что думаю.
Где корень всех зол зарыт ?
В DataModule. Не иначе.


 
Kostafey ©
 
(2007-04-04 22:59)
[13]

Ладно. Пойду модуль данных убивать.


 
Johnmen ©
 
(2007-04-04 23:18)
[14]


> Где корень всех зол зарыт ?

Как обычно, в 17 строке.
Ибо образовалась закольцованная ссылка в компоненте набора данных.


 
Kostafey ©
 
(2007-04-04 23:28)
[15]

> Как обычно, в 17 строке.

просто интересно, а от куда это пошло про 17-ю строку


> Ибо образовалась закольцованная ссылка в компоненте набора
> данных.

Нет там никакой закольцованности.
В наборе данных простая таблица.
Сделал модуль данных с нуля (не весь, а только необходимую его часть).
Поднял из архива ту версию формы, где я еще колонки не добавлял.
Компилирую — та же самая ошибка !!!

Ну что за плин.

Так и придется оставлять эти самые чертовы колонки.


 
Johnmen ©
 
(2007-04-04 23:53)
[16]


> Нет там никакой закольцованности.

Есть. О чём и говорит Circular datalinks are not allowed.
Т.е. один НД ссылается на второй, а второй на первый.
Или одно поле ссылается на другое в том же НД.


 
Kostafey ©
 
(2007-04-05 01:18)
[17]

> [16] Johnmen ©   (04.04.07 23:53)

Говорю ведь. Удалил я модуль данных. Вообще удалил.
Новый сделал.
Кинул на него набор данных (ADODataSet) тот из которого указанная сетка данные берет.
Набор данных — суть таблица. Даже Lookup-полей нет. Просто 1 таблица из БД.
С ним DataSource связал, его с сеткой.

Результат тот же.
Если размеры колонок в сетке начать мышкой двигать — ошибка вылетает.

Делаю тот же самый датасет, но уже в самой форме с сеткой — все ОК!

Логики в этой ошибке я вообще никакой не вижу…


 
Kostafey ©
 
(2007-04-05 01:44)
[18]

Вот еще одну интересную вешь заметил.
Если удалить из проекта один из модулей с формой (не удалить файл, а просто исключить из проекта),
то ошибка исчезает.
Подключаю снова — ошибка возвращается.

Этот модуть содержит DBEdit подключенный к LookUp-полю другого датасета, который берет данные в том числе
и из того DataSourse, из которого берет данные сетка, в которой возникает ошибка.

Но если удалить это LookUp-поле, DBEdit формы, то ничего не изменится. Ошибка остается.

Но опять никакой логики. Нет никакого кругового подключения. Просто один НД берет данные из другого и все.


 
Kostafey ©
 
(2007-04-05 02:06)
[19]


СОХРАНЯЙТЕ В ОРЕШНИКЕ, ГДЕ ХОТИТЕ ЭТО ПРОСТО ЧУДО.

Суть вот в чем. В совершенно другой форме (не в той в которой происходила ошибка)
я кинул компонентик TLookupComboBox, начал настраивать, да и бросил, недоделав, не в нем
суть задачи. Оказывается в нем я по ошибке ListSource и DataSource настроил на один
и тот же DataSource! И именно на этот DataSource ссылалась и та сетка, в которой
происходила причина моей бессоницы.

Вроде глупость, а потерял уйму времени…

Да, и все же почему именно на 17-й строчке ? ;)))


 
Desdechado ©
 
(2007-04-05 11:48)
[20]

> в нем я по ошибке ListSource и DataSource настроил на один и тот же DataSource!
О чем тебе в ошибке и сообщалось.

> почему именно на 17-й строчке ?
unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs;

type
 TForm1 = class(TForm)
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1; // вот она, 17-я, здесь начинается код!



Форум программистов Vingrad

Поиск:

Ответ в темуСоздание новой темы
Создание опроса
> Circular datalinks are not allowed 

:(

   

Опции темы

Dmi3ev
Дата 24.5.2009, 21:52 (ссылка)
| (нет голосов)
Загрузка ... Загрузка …




Быстрая цитата

Цитата

Эксперт
***

Профиль
Группа: Завсегдатай
Сообщений: 1698
Регистрация: 28.11.2007

Репутация: 16
Всего: 41

вот такая вот ошибочка в ДБЛукАпКомбобоксе… в чем может быть беда? Раньше не сталкивался, все делаю, как обычно вроде, но видно где-то накосячил, уже не соображаю совсем…

Добавлено через 13 минут и 59 секунд
Избавился от этого, но не понял как  smile 
ЗЫ
че-то я туплю…  smile 
если будет время объясните дураку, есть таблица, в ней, допустим два поля
id, rname
отображать надо два значения, а для дальнейшей работы брать только id, те Datafield id, вот как настроить ДБЛукАпкомбобокс?
я сделал, но сначала была ошибка, а потом ее не стало, ничего не понял, ну и х.. с ним… Однако, потом хотелось бы разобраться где я накосячил, я так понимаю что я один и тот же набор данных связал с ним же, вот как-то так… может криво говорю, но как понял, так объяснил…

———————

PM MAIL   Вверх
Dmi3ev
Дата 25.5.2009, 12:53 (ссылка)
| (нет голосов)
Загрузка ... Загрузка …




Быстрая цитата

Цитата

Эксперт
***

Профиль
Группа: Завсегдатай
Сообщений: 1698
Регистрация: 28.11.2007

Репутация: 16
Всего: 41

Ну чего? никто не знает в чем проблема была, я правильно себе обосновал происходящее?

———————

PM MAIL   Вверх
3315720
Дата 25.5.2009, 13:22 (ссылка)
| (нет голосов)
Загрузка ... Загрузка …




Быстрая цитата

Цитата

Шустрый
*

Профиль
Группа: Участник
Сообщений: 59
Регистрация: 28.2.2008

Репутация: нет
Всего: нет

Цитата(Dmi3ev @ 25.5.2009,  12:53)
Ну чего? никто не знает в чем проблема была, я правильно себе обосновал происходящее?

в ошибке же всё написано.
кольцевая ссылка.
т.е. ты прав

PM MAIL   Вверх
Dmi3ev
Дата 25.5.2009, 13:31 (ссылка)
| (нет голосов)
Загрузка ... Загрузка …




Быстрая цитата

Цитата

Эксперт
***

Профиль
Группа: Завсегдатай
Сообщений: 1698
Регистрация: 28.11.2007

Репутация: 16
Всего: 41

Цитата
в ошибке же всё написано.
кольцевая ссылка.

мой английский просто не так хорош, прочитать могу, но правильно ли я перевел, я не был уверен, чисто на чутье решал проблему… причем не понял, что я такого сделал, чтобы ее решить))) ну да не важно, наверное один и тот же набор данных взял случайно и шаманил с ним, те связывал сам с собой, а потом просто поменял, только я такого не помню… ладно, решен!
Бубен оказывается помогает… я думал это брехня  smile шуточка  smile танцы с бубном творят чудеса  smile буду иметь это в виду…
спасибо 3315720, что подтвердил! 

———————

PM MAIL   Вверх



















Ответ в темуСоздание новой темы
Создание опроса
Правила форума «С++ Builder»
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) — крупнейший в рунете сборник материалов по Дельфи

  • FAQ раздела лежит здесь!

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 

0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »

INTELLIGENT WORK FORUMS
FOR COMPUTER PROFESSIONALS

Contact US

Thanks. We have received your request and will respond promptly.

Log In

Come Join Us!

Are you a
Computer / IT professional?
Join Tek-Tips Forums!

  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It’s Free!

*Tek-Tips’s functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Students Click Here

Circular Datalinks are not allowed

Circular Datalinks are not allowed

(OP)

2 Feb 10 00:38

Can someone help me?

I’m getting the error ‘Circular Datalinks are not allowed’ and I cannot find using de debug mode (F7) were to find the error.

Is there an function in Delphi to figure out where I have make a mistake?

Red Flag Submitted

Thank you for helping keep Tek-Tips Forums free from inappropriate posts.
The Tek-Tips staff will check this out and take appropriate action.

Join Tek-Tips® Today!

Join your peers on the Internet’s largest technical computer professional community.
It’s easy to join and it’s free.

Here’s Why Members Love Tek-Tips Forums:

  • Tek-Tips ForumsTalk To Other Members
  • Notification Of Responses To Questions
  • Favorite Forums One Click Access
  • Keyword Search Of All Posts, And More…

Register now while it’s still free!

Already a member? Close this window and log in.

Join Us             Close

Avatar of frdep

Hi,
What is a «circular datalink» ?
I have two tables, one master and one detail.
Table1 —> DataSource1
Table2 with MasterSource set to Datasource1.
When I Table1.Open,  I have an error message «Circular datalinks are not allowed».  
If Table2.MasterSource is nil, and in Table1.AfterOpen I set the Table2.MasterSource, it is ok.
What is happening ????
Thanks

Delphi

Avatar of undefined

In your setup Table1 must be the Master table.
Have u set the linking master field

On the detail table’s object inspector goto masterfields and click on the dots. Then select the field that appears in both tables and click add.

That should do it

Yes, the fields are correctly set.  And it do not work.
It working only if in Table1.AfterOpen I set the Table2.MasterSource

THIS SOLUTION ONLY AVAILABLE TO MEMBERS.

View this solution by signing up for a free trial.

Members can start a

7-Day free trial

and enjoy unlimited access to the platform.

you may have defined a lookupfield,
which causes the error

meikl ;-)I

I did delete  tables and datasource, and re-install it.  Now it is working !!!!
Thanks

Понравилась статья? Поделить с друзьями:
  • Ошибка cinnamonbeard sea of thieves
  • Ошибка cinema 4d отсутствует плагин
  • Ошибка cin не является однозначным
  • Ошибка ci триколор проверьте настройки антенны
  • Ошибка ci проверьте настройки антенны и повторно установите модуль