powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Не отображаются данные в поле со списком.
25 сообщений из 62, страница 2 из 3
Не отображаются данные в поле со списком.
    #38196988
П-Л
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изерлонер... Похоже действительно в начале форма не успевает загрузиться.
Не пришла пора и вам взять на себя порядок создания форм в памяти и загрузки в них данных ?
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #38197022
Изерлонер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите пожалуйста еще, у меня на форме контейнере есть еще и третья подчиненная форма, записи в которой отбираются исходя из первых двух. Критерии на картинке. При обработке события по текущей записи поля IDZAK, TypeID, iKF сохраняются в соответствующих полях формы контейнера и использование их в дальнейшем для задания критериев отбора не представляет проблемы. Однако что касается поля iKOD ...
По замыслу форма cldRequestContent_Buh показывает детализацию содержания конкретного документа из cldRequest_Buh. А вот в третьей форме идет подсчет суммарного количества выписанных материалов/запчастей и сравнение их с нормативом. Хочу сделать так что бы каждая отображаемая запись в ней соответствовала соседней в cldRequestContent_Buh.

То есть получится запрос типа
Код: sql
1.
"Select * From qrySumZehWithNorm Where IDZAK = " & Me!IDZAK & " And TypeID = " & Me!TypeID & " And iKF = " & Me!iKF & "And iKOD in (?????)


Как достать вот эти данные (перечень iKOD) высвечиваемые в данный момент, из рекордсоурса формы cldRequestContent_Buh? (собственно все iKOD содержащиеся в рекордсоурсе).
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #38197061
П-Л
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тоже все просто.

авторПри обработке события по текущей записи поля IDZAK, TypeID, iKF сохраняются в соответствующих полях формы контейнера
Особого смысла корячить код на Current, только чтобы только передать значения в контролыы парент формы значения нет. Достаточно сослаться в контролах на данные субформы - все само заработает.
Написать в ControlSource строку =[subForm].Form!IDZAK

авторКак достать вот эти данные (перечень iKOD) высвечиваемые в данный момент, из рекордсоурса формы cldRequestContent_Buh? (собственно все iKOD содержащиеся в рекордсоурсе).
Можно, канешно, клеить предлинную строку айди через запятые, которую потом скармливать WHERE ... IN <Сия строка>.
Как мне кажется, лучше по-другому. Модифицируйте источник правой нижней формы так, чтобы туда вошли те параметры, которые определяют iKOD левой формы (сделать их невидимыми). И тогда для нее подойдет то же условие фильтрации, что и для левой нижней формы. Ведь по смыслу содержание и левой и правой нижней формы у вас определяются текущей строкой верхней мастер-формы.

Человеческие подписи полей и человеческие подписи субформ надо сделать...
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #38197066
П-Л
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И резиновые формы, чтобы перед принтскрином размер делать поменьше.
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #38197078
Изерлонер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
П-ЛМодифицируйте источник правой нижней формы так, чтобы туда вошли те параметры, которые определяют iKOD левой формы (сделать их невидимыми). И тогда для нее подойдет то же условие фильтрации, что и для левой нижней формы. Ведь по смыслу содержание и левой и правой нижней формы у вас определяются текущей строкой верхней мастер-формы.



Тут есть проблемка :(
Я вообще эту всю возню затеял что бы уйти от того монстрообразного запроса, если помните таковой. Ну и параллельно интерфейс сменить. От запроса уйти удалось, все несколько проще стало. Однако добавить к полям 3-ей формы определяющее поле то же что и для второй субформы - iRequest пока толком не получается. Запрос тоже весьма тяжелый получается, действует очень медленно, да и выдает ... несколько больше чем должен бы. Раз в десять. Понятно что где то ошибка в запросе, но легче он от того не становится, скорее еще сложнее и медленнее станет если дополнительные join ы делать.
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #38197090
Изерлонер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хотя там все равно где то у меня ошибка в логике. Чувствую что что-то не так, но понять что и где пока не понимаю. Третья субформа (правая нижняя) по сути есть производное первых двух. Точнее сам запрос является производным от первых двух таблиц (плюс норматив). В этом запросе производится суммирование по критериям (IDZAK, TypeID, iKF) если добавить туда iRequest то смысл теряется, производится суммирование в пределах одного документа, а это мне совсем не надо. В то же время добавить iRequest позднее ... получается масло маслянное, да еще и тормоза дикие ... собственно вернулся к началу сообщения.
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #38197160
П-Л
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня впечатление, что ошибка в самой задумке. Если для синхронизации формы-субформы приходится вытаскивать НЕСКОЛЬКО полей - у вас явно не хватает сущности, где сосвокупность этих полей будет давать одну запись. А у нее должен быть ПК автосчетчик. И его одного было бы достаточно.

Вопщем, уверен, если бы я мог поковыряться денек с этими данными, нашел бы способ...

Яркое подтверждение просчетов в структруре БД - неудобно строить запросы и формы... Все должно идти как по маслу...
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #38197484
Изерлонер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
П-Л,

Ну а как? Ну вот смотрите, тут все построение достаточно просто. Имеется две таблицы:
tblRequest_Buh - документы на списание материалов/запчастей ("требование"), с полями (указываю только существенные):
IDZAK - номер заказа (конкретный агрегат, машина на ремонт которой производится списание)
TypeID - ИД типа агрегата (по типу совместно с ИД элемента производится поиск нужной записи в нормативе)
iKF - ИД цеха который производит списание материалов/запчастей.
iRequest - PK документа
Поля с датой документа и пр. опускаю, так как сейчас не существенно.

Вторая таблица:
tblRequestContent_Buh - как видно из названия состав документа - перечень материалов/запчастей выписываемых конкретным требованием.
iRequest - FK ссылка на первую таблицу.
iRequestContent - PK
iKOD - ИД запчасти/материала
CNT - количество списываемого материала/запчасти.


Так как один и тот же материал/запчасть может быть выписан на ремонт изделия не однократно в течение ремонта, а мне нужно знать сколько было списано всего, и сравнивать это с нормативным количеством делаем запрос:
qrySumZeh - суммарное количество материалов списанных на ремонт изделия конкретным цехом.
Код: sql
1.
2.
3.
Select IDZAK, TypeID, iKF, iKOD, Sum (CNT) as SumZeh
From tblRequest_Buh Join  tblRequestContent_Buh ON tblRequest_Buh.iRequest = tblRequestContent_Buh.iRequest
Group by IDZAK, TypeID, iKF, iKOD


Вот они те самые три поля. Я не могу запихать в запрос ИД iRequest - иначе суммирование будет не по изделиям и цехам, а в пределах одного документа :(

Затем уже в форме выводим таблицу tblRequest_Buh - для выбора конкретных документов которые проверяю по работе т.е. физически (приносят в рулонах бумаги распечатанные)
таблицу tblRequestContent_Buh - для проверки построчно что и сколько конкретно выписывали.
и запрос qrySumZeh для проверки того сколько вообще было списано материалов/запчастей в ходе ремонта данного изделия.

Пример несколько упрощенный, что бы не перегружать деталями. Но все что имеет значение в рамках этой задачи здесь есть. За рамками остались таблицы нормативов (норматив включается в запрос qrySumZeh - что бы тут же и сравнить). А так же запрос qrySumIzd аналогичный первому, но выводящий сколько было списано материалов/запчастей вообще (всеми цехами) на ремонт изделия.

Ну и как в этот запрос qrySumZeh, являющийся основой третьей формы включить ключевое поле iRequest?
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #38197522
Изерлонер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изерлонер
Ну и как в этот запрос qrySumZeh, являющийся основой третьей формы включить ключевое поле iRequest?

Я его пытался включить запросом:
Код: sql
1.
2.
3.
Select IDZAK, TypeID, iKF, iKOD, iRequest 
From qrySumZeh Join tblRequest_Buh ON qrySumZeh.IDZAK = tblRequest_Buh.IDZAK AND qrySumZeh.TypeID = tblRequest_Buh.TypeID _
        AND qrySumZeh.iKF = tblRequest_Buh.iKF



но получается какая то чушь, записей в десяток раз больше чем должно быть, и работает это все очень и очень медленно (ну там еще в силу того что все чуть сложнее чем описал здесь).
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #38197583
П-Л
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторНу а как? Ну вот смотрите, тут все построение достаточно просто. Имеется две таблицы:
tblRequest_Buh - документы на списание материалов/запчастей ("требование"), с полями (указываю только существенные):
iRequest - PK документа
IDZAK - номер заказа (конкретный агрегат, машина на ремонт которой производится списание)
TypeID - ИД типа агрегата (по типу совместно с ИД элемента производится поиск нужной записи в нормативе)
iKF - ИД цеха который производит списание материалов/запчастей.
Поля с датой документа и пр. опускаю, так как сейчас не существенно

Смешались в кучу кони, люди...

Во время прошлого диалога я написал, что сущности в вашей БД не выделяются так выпукло и наглядно, как хотелось бы. Из-за этого трудно дать точный совет, потому что картина не ясна, надо глубоко вникать. Во всех вниканиях в вашу БД мне хотелось навести бОльший порядок в инменах таблиц и полей. Вы привыкли, вам так удобно - а мне непонятно, задача очень объемная. Так что кроме как общего сентенции: у вас что-то не так, дать не могу.

Однообразия в именовании полей нет. iRequest - один стиль, IDZAK - второй, TypeID - третий омерзительно...
Хачю tblRequestBuh - iRequestBuh !!!, iZakazID, iAggregatTypeID.

авторtblRequest_Buh - документы на списание материалов/запчастей ("требование"), с полями (указываю только существенные):
iRequest - PK документа
IDZAK - номер заказа (конкретный агрегат, машина на ремонт которой производится списание)
TypeID - ИД типа агрегата (по типу совместно с ИД элемента производится поиск нужной записи в нормативе)
iKF - ИД цеха который производит списание материалов/запчастей.


Заказ должен быть заказом. А не агрегатом. Тип агрегата достается через его таблицу, как свойство агрегата.

У вас есть таблица документов на списание для ремонта агрегатов в цехе. Где для нее мастер-таблица РемонтАгрегатаВЦехе(PKАгрегатЦех, Агрегат, Цех, ОбщаяИнформацияОВсемРемонте возможно насчитанные агрегаты сколько уже списано для быстрой работы) ? Его-то айди и должен был бы использоваться в ТаблицеДокументовСписания (PKСписания, FKАгрегатЦех, ЧегоСписываем, Сколько, ...)

А у вас все время как-то сумбурно, четко по полочкам не разложено. Ворох какой-то бесформенный.

Еще раз повторюсь: в системе подобного класса сложности сущности и поля должны звенеть! По мне у вас не звенят... И вы, как сами уже признавались, все время откладываете наведение порядка на потом, светлое будущее...
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #38197793
Изерлонер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
П-Л,

П-Л,

ну... светлое будущее не за горами. Разномастные имена полей – наследие внешней базы, ну и некоторых моих первоначальных попыток что то сделать.
Внешняя база практически полностью переработана. Создана ответная система таблиц с «нормальными» обозначениями полей (правда таки не очень понятными было поле NUM стало iNum, как бы промежуточный вариант), составные ключи исключены, везде ключ автосчетчик. Так что работа идёт по тихоньку. .. красоту наводить это конечно хорошо, но ведь ещё и работа есть, и эта база мне прежде всего для работы и нужна. Так что приходиться идти на компромиссы :(
поля IDZAK, iKF, iKOD, TypeID являются FK на соответствующие сущности. ... Ну не выкладывать же мне сюда всю базу в самом деле :( это только к ещё большей путанице приведёт.
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #38197810
Изерлонер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изерлонер,

половину полей внешней базы я даже находясь здесь и имея возможность изучить ... вообще не понимаю что это такое и зачем. Тупо переношу в свою базу в ответные сущности по принципу ... ну а вдруг там полезная информация, которая мне ещё пригодится.
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #38197853
Изерлонер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзерлонерПНу не выкладывать же мне сюда всю базу в самом деле

ответная переработанная схема внешней БД если это поможет :(.
Предвосхищая вопрос «х/з» это «хрен знает». Перенесенное поле значение которого мне пока не известно, но по сути для меня значения не имеет.
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #38197858
Изерлонер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IDZAK, TypeID входят в tblRequest_Buh на следующем этапе. По сути в рекордсорсе не таблица, а запрос qryRequest_ Buh.
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #38198435
Изерлонер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сделал я то чего добивался. субФормочки обновляются, таблички отфильтровываются и запихиваются в рекордсоурс. Все выглядит страшненько пока конечно, но работает.
Вопрос: вот есть рядом две подчиненных формы, записи в них соответствуют друг другу и установлены друг на против друга, одна субФорма является продолжением второй.
Возможно ли, в случае если записей довольно много и в форму это все не вмещается, при прокрутке записей (мышкой, бегунком ли) синхронно прокручивать записи в двух (трех) субформах? Где копать?
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #38198486
Фотография Программист-Любитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Штатным способом нет. Если у вас в разных субформах данные соответствуют друг другу, то они по смыслу должны быть в одной субформе.

Хотите чтобы было не слишком громоздко и красиво - выводите в нее только главные данные, агрегаты. Детали для текущей записи выводите другими способами.

Либо делаете в ней прибитые слева столбцы-заголовки строк и переменные наборы столбцов для неприбитой части с оциями выбора в виде опшон буттонов: Показывать данные (*) ля-ля-ля, (_) жу-жу-жу, (_) бе-бе-бе
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Не отображаются данные в поле со списком.
    #39675060
Фотография Rikozenit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго дня, форумчане!
В поле со списком Номенклатура выпадает список с позициями, наличие которых на складе >0. Но после переноса со склада всего остатка, в этом поле перестают отображаться наименования номенклатур, так как они перестают попадать в выборку, на основании которой формируется этот список.
Есть ли способ сохранять отображение этих данных?
Картинка в приложении.
Спасибо)
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #39675068
Serg197311
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Конечно есть) Наверное)
Только надо понять - а как именно данные в этот список попадают?
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #39675087
Фотография Rikozenit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Serg197311, источник строк для поля со списком - запрос:
Код: sql
1.
2.
3.
4.
SELECT Наличие_поСкладам.Код, Наличие_поСкладам.Наименование1, Наличие_поСкладам.ТС
FROM Наличие_поСкладам
WHERE (((Наличие_поСкладам.ТС)>0))
ORDER BY Наличие_поСкладам.ТС DESC;
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #39675108
Serg197311
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Правильно ли я понял - товары перемещаем в другое место и запрос не возвращает ничего потому что там где он ищет ничего нет?
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #39675117
Serg197311
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я конечно не знаю точно - как там организовано все.....
Там есть список "Со склада" - попробуйте там выбрать "Изолятор брака".......
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #39675420
Фотография Rikozenit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Serg197311,
Если после перемещения некоего товара его количество на данном складе становится 0, этот товар пропадает из выборки для выпадающего списка, так как перестаёт выполнятся условие >0.
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #39675424
Serg197311
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Значит, я правильно понял
А какую(какие) именно "номенклатуры " надо отобразить в списке?
Если они на складе(в данной таблице) есть, то они и отображаются....
Если их нет на складе( в данной таблице) то откуда их взять?
Те которые были перед перемещением с количеством 0 или еще откуда то взятые?
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #39675427
Serg197311
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно из кода VBA подменить rowsource списка на такой же но с условием =0.... будет ли это то что надо? перемещение происходит изменением количества на 0 или удалением строки?
...
Рейтинг: 0 / 0
Не отображаются данные в поле со списком.
    #39675440
Фотография Rikozenit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Serg197311А какую(какие) именно "номенклатуры " надо отобразить в списке?
Поясню: это журнал складских переносов. Плохо, что когда на данном складе у какой-либо номеклатуры обнуляется поле с наличием - пропадают заголовки в таблице внизу формы (наименование этой номенклатуры) всех строк с манипуляциями по данной номенклатуре.
Serg197311перемещение происходит изменением количества на 0 или удалением строки?
Строки не удаляются! Пример: На складе Технологического сектора числится Планка ЭАТЕФ 5шт. После оформления переноса её в кол-ве 5шт. со склада Технологического сектора на любой другой склад, её кол-во в наличии склада становится =0 и из выборки строк выпадающего списка пропадает. (+ это количество переходит в разряд "Проводки", пока его не оприходует принимающий склад, но это к делу не имеет особого отношения))
Serg197311Можно из кода VBA подменить rowsource списка на такой же но с условием =0..
Думаю это будет то, что надо! Только не знаю, как это реализовать(
...
Рейтинг: 0 / 0
25 сообщений из 62, страница 2 из 3
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Не отображаются данные в поле со списком.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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