powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / ADO рекордсет как источник формы - хочу редактировать столбцы из разных таблиц
9 сообщений из 34, страница 2 из 2
ADO рекордсет как источник формы - хочу редактировать столбцы из разных таблиц
    #32499847
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 marvan
...
Рейтинг: 0 / 0
ADO рекордсет как источник формы - хочу редактировать столбцы из разных таблиц
    #32499932
marvan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Лох Позорный
Чудные тут модераторы... факи показывают? Или я чё путаю?
А между тем, если бы Ольга_Т сделала, как я советовал - то проблем не было. Или они были бы легко разрешимы.
...
Рейтинг: 0 / 0
ADO рекордсет как источник формы - хочу редактировать столбцы из разных таблиц
    #32499945
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ты ничего не путаешь. Это именно фак.

З.Ы. Если бы Ольга сделала как ты сказал - хрен бы у нее табличная форма когда-нибудь получилась. Ну и проблем со всякими сортировками - разумеется тоже бы не было
...
Рейтинг: 0 / 0
ADO рекордсет как источник формы - хочу редактировать столбцы из разных таблиц
    #32500006
marvan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лох ПозорныйТы ничего не путаешь. Это именно фак.
Хам трамвайный, а не модератор. Вместо ругани - предложи решение.
Лох Позорныйхрен бы у нее табличная форма когда-нибудь получилась. Ну и проблем со всякими сортировками - разумеется тоже бы не было
Несколько десятков моих успешных проектов, позвояют с этим не согласиться.
...
Рейтинг: 0 / 0
ADO рекордсет как источник формы - хочу редактировать столбцы из разных таблиц
    #32500084
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хам трамвайный, а не модератор
Не хрен на Хама наезжать. Это раз.
Не хрен со своими VB-шными (и, имхо , отсталыми) привычками соваться в достаточно специфичные проблемы аксесовских гридов. У человека вопрос по аксесовским формам (гридам) , и тут появляется умный marvan и заявляет, что все вокруг ....... один он дартаньян, гланды надо вырезать через .... автогеном, а гриды надо рисовать руками.
Это два.
Ваше "DataBound поем мы песню" - вообще как в лужу пернул. Это три.

Вместо ругани - предложи решение.
Описание проблемы слишком невнятное. То форма на двух таблицах, то редактирование записи в двух формах, то проблема с сортировкой, то уже нет проблем с сортировкой, но появилось какое-то непрерывное обновление....
Я не телепят, ни понять, ни воспроизвести у себя это не могу.
Придут телепяты - разрулят вопрос

Несколько десятков моих успешных проектов, позвояют с этим не согласиться
Да хоть несколько сотен. На аксесе из несвязанной с данными формы сделать табличную - упаришься.
На Vb - не вопрос. А на VC я еще круче сделаю. А на дотнете - еще круче, быстрее и красивее, и что с того?
Вы форумом ошиблись. Здесь обсуждается аксес.
...
Рейтинг: 0 / 0
ADO рекордсет как источник формы - хочу редактировать столбцы из разных таблиц
    #32500281
Ольга_Т
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лох!
Форма висит на 6-8 таблицах, не суть. Редактируются из них две - сам заказ (штуки в заказе) и каталог товаров (параметры для аналитиков). По ходу дела может понадобиться подкорректировать информацию о товаре существенно, скажем, опечатку в названии исправить. Тогда на Dbl-Click вызывается всплывающая форма для работы с каталогом. Теперь после замены источника табличной формы заказа с представления на ADO рекордсет редактирование записи в этой форме вызывает конфликт.
Заказы состоят из сотен записей, поэтому реально аналитик с ними работает через фильтры и сортировку. В аксесе картинка не дергалась, если изменять значения в столбце, на который наложена сортировка, порядок записей менялся только при перерисовке окна. От записи к записи можно было ходить спокойно, соседние записи в пределах окна порядка не меняли. Теперь на ADO рекордсете записи пересортировываются фактически на OnDirty, при редактировании отсортированного столбца количеств строки непрерывно прыгают.
...
Рейтинг: 0 / 0
ADO рекордсет как источник формы - хочу редактировать столбцы из разных таблиц
    #32500467
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Редактируются из них две - сам заказ (штуки в заказе) и каталог товаров (параметры для аналитиков).
Немного не в тему, но все же. Разве правильно редактировать и заказ, и справочник одновременно? Я, конечно, постановку задачи не знаю, но что-то во мне противится такому решению.
Ну да не суть.

Теперь после замены источника табличной формы заказа с представления на ADO рекордсет редактирование записи в этой форме вызывает конфликт.
А чем вызвана необходимость замены источника строк на ADODB.Recordset? Из предыдущего обсуждения я что-то не уяснил - чем же вам вьюха не угодила?
Форму повесили на рекордсет с помощью Me.Recordset? Вроде бы в форуме неоднократно проскакивали замечания по поводу не совсем корректной работы аксеса после манипуляций с рекордсетом и последующими сортировками/фильтрами. А может и глючит меня...
В любом случае рекордсет формы без необходимости лучше не трогать, не любит этого аксес.

Да, очень рекомендуется указывать версию аксеса, скуля, установленные сервиспаки и т.п.

На своем 2002-м аксесе и 2000-м скуле я ничего подобного не наблюдаю. Почему-то. Даже глюка с сортировкой, хотя про него давно слышал.
И на рекордсет все вешается. И данные в двух таблицах нормально апдейтятся. Безо всякого шаманства. Че та я наверное не то делаю.

Привели бы хоть приблизительную структуру базового запроса (вьюхи).
...
Рейтинг: 0 / 0
ADO рекордсет как источник формы - хочу редактировать столбцы из разных таблиц
    #32500722
Ольга_Т
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лох Позорный
Разве правильно редактировать и заказ, и справочник одновременно? Желание работодателя, форма пишется под конкретного пользователя.
Лох Позорный
обсуждения я что-то не уяснил - чем же вам вьюха не угодила?
Несколько настроечных параметров, раньше аксессный запрос зачитывал значения с шапки формы и расчетные поля считал на месте (тормозилово), потом сделали на процедуре и все стало летать, только редактируемую таблицу переназначали каждый раз)))
А конструкция источника такая, что вьюха не редактируемая в аксесе, как ни бейся))
Аксесс 2000, все сервис паки, и джет пропатчен.

Источник:
PROCEDURE SuppPriceCompositionP
@SuppPriceID int, @DisLevel money = 1, @CheckExclude int = 0
AS
-- отбирает тело для формы заказов поставщикам

BEGIN
DECLARE @pSumQP money, @pSumQLC money, @pSumQPDisBC money
if @DisLevel<0 or @DisLevel>2
set @DisLevel=1

SELECT dbo.SuppPriceCompositionV.CatEditionID as BCEditionID, dbo.SuppPriceCompositionV.Authors,
dbo.SuppPriceCompositionV.EditionName, dbo.SuppPriceCompositionV.Volume, dbo.SuppPriceCompositionV.Editor,
dbo.SuppPriceCompositionV.SuppPriceID, dbo.SuppPriceCompositionV.AlienID, dbo.SuppPriceCompositionV.ISBN,
dbo.SuppPriceCompositionV.Cost,
dbo.SuppPriceCompositionV.CostUSD, dbo.SuppPriceCompositionV.HC, dbo.SuppPriceCompositionV.HCover, dbo.SuppPriceCompositionV.CatISBN,
dbo.SuppPriceCompositionV.Author, dbo.SuppPriceCompositionV.Title, dbo.SuppPriceCompositionV.FilterString,
dbo.SuppPriceCompositionV.Quantity, dbo.SuppPriceCompositionV.AltQuantity, dbo.SuppPriceCompositionV.RetQuantity,
dbo.SuppPriceCompositionV.Price,
dbo.SuppPriceCompositionV.LastPrice, dbo.SuppPriceCompositionV.LastCost, dbo.SuppPriceCompositionV.LastPriceFillDate,
dbo.SuppPriceCompositionV.EditionID, dbo.SuppPriceCompositionV.TypeBookInPrice, dbo.SuppPriceCompositionV.Comment,
dbo.SuppPriceCompositionV.FoundQuantity, dbo.SuppPriceCompositionV.[Year], dbo.SuppPriceCompositionV.PublishingYear, dbo.SuppPriceCompositionV.Stdt,
dbo.SuppPriceCompositionV.Pages, dbo.SuppPriceCompositionV.CatPages, dbo.SuppPriceCompositionV.CatStdt,
Round(convert(money, ISNULL(dbo.SuppPriceCompositionV.Quantity, 0) * ISNULL(dbo.SuppPriceCompositionV.LastCost, 0)),2) AS QLC,
Round(convert(money, ISNULL(dbo.SuppPriceCompositionV.Quantity, 0) * ISNULL(dbo.SuppPriceCompositionV.Price, 0) * @DisLevel),2) AS QP,
Round(convert(money, ISNULL(dbo.SuppPriceCompositionV.Quantity, 0) * dbo.SuppPriceCompositionV.Cost * @DisLevel
* (1 + dbo.SuppPriceCompositionV.NDSTax)), 2) AS QPDisBC, ROUND(dbo.SuppPriceCompositionV.Cost * (1.0 + dbo.SuppPriceCompositionV.NDSTax), 2) AS CatPrice,
dbo.SuppPriceCompositionV.NDSTax, dbo.SuppPriceCompositionV.Monopoly, dbo.SuppPriceCompositionV.Elitarity, dbo.SuppPriceCompositionV.Running, dbo.SuppPriceCompositionV.AlarmID,
dbo.SuppPriceCompositionV.AlarmQuantity, dbo.BooksAllocationTable.Total, dbo.BooksAllocationTable.Supp,
CASE WHEN [RunQnt] > [Supp] THEN [RunQnt] - [Total] ELSE [Supp] - [Total] END AS Sent, [BooksAllocationTable].Sold,
[BooksAllocationTable].Returned, [BooksAllocationTable].InShop, [BooksAllocationTable].RunQnt, [BooksAllocationTable].DRating,
[BooksAllocationTable].Stability, [BooksAllocationTable].Reserved, Publishers.Publishers, SuppPriceCompositionV.PublishersID,
SuppPriceCompositionV.LastInvDate, SuppPriceCompositionV.LastQuantity, [BooksAllocationTable].LastDenialDate,
[BooksAllocationTable].LastSendDate, [BooksAllocationTable].LastIncomeDate
FROM dbo.SuppPriceCompositionV INNER JOIN
dbo.SuppPrice ON dbo.SuppPriceCompositionV.SuppPriceID = dbo.SuppPrice.SuppPriceID LEFT OUTER JOIN
dbo.BooksAllocationTable ON dbo.SuppPriceCompositionV.EditionID = dbo.BooksAllocationTable.EditionID LEFT OUTER JOIN
dbo.Publishers ON dbo.SuppPriceCompositionV.PublishersID = dbo.Publishers.PublishersID
WHERE dbo.SuppPriceCompositionV.SuppPriceID=@SuppPriceID and
case when @CheckExclude=0 then 1
when @CheckExclude=1 and dbo.SuppPriceCompositionV.TypeBookInPrice<=2 then 1
when @CheckExclude=2 and (ISNull(dbo.SuppPriceCompositionV.Quantity,0)>0 or ISNull(dbo.SuppPriceCompositionV.AltQuantity,0)>0) then 1
when @CheckExclude=3 and dbo.SuppPriceCompositionV.Running=4 then 1 else 0 end = 1
ORDER BY dbo.SuppPriceCompositionV.Authors, dbo.SuppPriceCompositionV.EditionName, dbo.SuppPriceCompositionV.Volume

SuppPriceCompositionV:

SELECT dbo.SuppPriceComposition.*, dbo.BooksCatalog.EditionID AS CatEditionID, dbo.BooksCatalog.Authors, dbo.BooksCatalog.EditionName,
dbo.BooksCatalog.Volume, dbo.BooksCatalog.Editor, dbo.BooksCatalog.HCover, dbo.BooksCatalog.Pages AS CatPages,
dbo.BooksCatalog.Cost AS CatPrice, dbo.BooksCatalog.Cost, dbo.BooksCatalog.NDSTax, dbo.BooksCatalog.ISBN AS CatISBN,
dbo.BooksCatalog.PublishingYear, dbo.BooksCatalog.PublishersID, dbo.BooksCatalog.Stdt AS CatStdt, dbo.BooksCatalog.AlarmQuantity,
dbo.BooksCatalog.AlarmID, dbo.BooksCatalog.CostUSD, dbo.BooksCatalog.Monopoly, dbo.BooksCatalog.Elitarity, dbo.BooksCatalog.Running
FROM dbo.SuppPriceComposition LEFT OUTER JOIN
dbo.BooksCatalog ON dbo.SuppPriceComposition.EditionID = dbo.BooksCatalog.EditionID

Это облегчает постановку вопроса?
...
Рейтинг: 0 / 0
ADO рекордсет как источник формы - хочу редактировать столбцы из разных таблиц
    #32501407
Ольга_Т
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Объясните мне, пожалуйста, как правильно задавать ResyncCommand!
Так, как я это поняла, -
Me.SuppPriceComposition.Form.ResyncCommand = "SuppPriceCompositionP"
Me.SuppPriceComposition.Form.InputParameters = "@SuppPriceID int=[Form]![SuppPriceID], @DisLevel money =1, @DisLevel int =0"

- время от времени ругается, что SQL неправильный и не содержит разных слов типа "DELETE", "UPDATE", "SELECT", и никак не влияет на наличие или отсутствие глюков.
...
Рейтинг: 0 / 0
9 сообщений из 34, страница 2 из 2
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / ADO рекордсет как источник формы - хочу редактировать столбцы из разных таблиц
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]