Показать сообщение отдельно
Старый 03.03.2003, 19:33   #28  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Изначально опубликовано Andronov
поэтому нарочно поискал определения в сети:
Огромное спасибо за то что заставил поискать по сети.
Получил огромное удовольствие от процесса.

Хотел показать, что типичной master-detail формой в Аксапте является заказы. Хотел продемонстрировать с картинками. Так и не нашел текст с картинками который искал.
Зато нашел кучу текста и с удовольствием читаю.

Вот что думает Microsoft на эту тему.
http://msdn.microsoft.com/library/de...formwizard.asp
Master/Detail Specifies a form that displays a Master record source and a Detail record source linked together. The Master record source is in single record format and the Detail record source is in a Grid (Datasheet) format. When data in a Master record source row changes, the data in the Detail record source automatically changes based on the link between the two.


http://msdn.microsoft.com/library/de...ndowsForms.asp

http://msdn.microsoft.com/library/de...thdatagrid.asp

http://msdn.microsoft.com/library/de...indowsform.asp


http://www.navision-us.com/us/view.asp?documentid=1106
The New Visual Design of Navision

Вот что думает Борланд
http://info.borland.com/techpubs/jbu...terdetail.html
Establishing a master-detail relationship

http://info.borland.com/techpubs/jbu...tamodules.html
http://info.borland.com/techpubs/jbu...resolving.html

А это Сан и Джавой.
http://java.sun.com/blueprints/guide...x.html#1043469



Цитата:
Изначально опубликовано Andronov
В моих определениях Клиент - мастер, Проводки - детейлы. Показывается в гриде элементарно (именно это я и хочу сделать): показывается список проводок, в каждой строке кроме информации о самой проводке есть, скажем, название и адрес клиента.
Так вот. По твоим определениям, ты должен ходить по клиентам, и у тебя должны показываться проводки по каждому клиенту.

Ты же хочешь ходить по проводкам, и чтобы в каждой проводке у тебя показывалось название клиента. Во всех документах это называется лукапом. Так что название вопроса у тебя правильное

Далее.
Твой проект не соответствует диаграмме, а диаграмма не соответствует запросу.
inner join в запросе не подразумевает, что запись в клиентской таблице одна!!!
подумай над этим и многое станет понятно.

чтобы в запросе было явно сказано, что клиент один нужно делать exist join в Аксапте. В аксапте есть такой тип связи. Почитай доку.

Зарпос на T-SQL должен походить на
PHP код:
USE pubs
SELECT pub_name
FROM publishers
WHERE EXISTS
   
(SELECT *
   
FROM titles
   WHERE pub_id 
publishers.pub_id
      
AND type 'business'
Причем заметь одну важную штуку! В диаграмме ты указал связь 1:М, причем 1 - у тебя обязательное условие. Меньше, чем 1 запись быть не может на твоей диаграмме. При вводе новой записи в проекте, ты вполне можешь содать запись в MainTable, которая ни с чем не связана.



Цитата:
Изначально опубликовано Andronov
Если я связываю 2 таблицы по внешнему ключу, я найду способ сделать так, чтоб он был уникальным. В любом случае, на запрос это никак не влияет.
Ты, конечно, найдешь способ. А форма? Она то об этом знает?
Сказать ей об этом можно только в запросе.
Вот и вырази запрос так, чтобы ей было сразу понятно.

Постараюсь написать о лукапе и что для этого надо.
Завтра или на выходных...

Еще раз хотелось бы повторить - продумай что зачем и какие варианты имеются.
В основном твоя проблема в том, что ты ПРЕДПОЛАГАЕШЬ, что запись только одна. А Аксапта об этом ничего не знает и она работает исходя из того, что записей МОЖЕТ быть много.