powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Расчет суммы накладной.
25 сообщений из 29, страница 1 из 2
Расчет суммы накладной.
    #32407693
Vitaly223
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MDB проект. Учет продажи товаров.
Таблицы:
Список товаров (Код товара, Наименование)
Расходная накладная (Код накладной, Сумма)
Табличная часть накладной (Код накладной, Код товара, Количество, Цена)

В проекте открыта форма, в которой отображена табличная часть выбранной накладной.
В примечании формы имеется поле "Сумма" с формулой "=Sum(Количество*Цена)"

Вопрос!
При изменении количества или цены товара в табличной части накладной значение поля "Сумма"
в примечании формы записывать в поле "Сумма" таблицы "Расходная накладная".
Не использовать функцию DSum!!!
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32407698
Фотография Темный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На onChange...
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32407710
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Только тогда уж не Change, а AfterUpdate.
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32407848
guest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
такие вещи лучше вобще в 1с делать. Накладные в аксессе.. бррр..
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32407849
Фотография Темный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А накладные в 1С - это вообще пипец
Особенно скрещивать Axapta и 1С... %-(
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32407878
guest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в 1с как раз все нормально с документами :) Она для этого и нужна.
И зачем же так извращаться.. это не гигиенично..
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32407888
Фотография Темный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гигиенично или нет...
Начальству это, извините, настолько покуй...
Не получается иначе. Думали уже.

Зе енд оффтопик.
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32407990
Vitaly223
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поторопились закрывать топик. Вопрос был не том, что лучше 1С или Аксесс. Не отклоняйтесь от темы.

Упрощаю вопрос.
При изменении значения в поле "Количество" нужно выводить сумму по накладной во всплывающем окне. Сумма выводится не та, без учета нового введенного значения.
Private Sub Количество_AfterUpdate()
MsgBox Me.Сумма
End Sub
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32408070
Фотография Daf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если на событие AfterUpdate поля Количество и Цена повесить обновление (запрос) Суммы в таблице. А потом сделать Requery...
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32408091
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Requery, мне кажется, излишне.
Если в поле сумма источник данных типа "=[Колво]*[Цена]", то надо

Private Sub Количество_AfterUpdate()
Me.Recalc
MsgBox Me![Сумма]
End Sub

, а если в "сумма" источник - "SummField", то

Private Sub Количество_AfterUpdate()
Me![Сумма] = Me![Количество]*Me![Цена]
MsgBox Me![Сумма]
End Sub
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32408112
Фотография Daf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пожалуй. Я стормозил. Ведь сумма скорее всего записывается после формирования накладной.
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32408118
Roalex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>>Сумма выводится не та, без учета нового введенного значения.

Чтобы сумма выводилась та, необходимо сохранить запись, в которой производились изменения.
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32408136
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roalex> Чтобы сумма выводилась та, необходимо сохранить запись, в которой производились изменения.

Ээ... А зачем?..
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32408818
Vitaly223
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На одной форме выведены заголовки накладных. Выбираю накладную и открывается другая форма с табличной частью этой накладной. Начинаю вводить данные (количество). Для события AfterUpdate поля Количества записана команда Ме.Recalc (как посоветовал Geo)
Что мне не нравится при выполнении этой команды:
- Происходит мелькание экрана при пропечатывании количества
- На форме со списком накладных текущая запись перемещается на начало списка.
Что делать?
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32408888
Фотография Serafim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
- Происходит мелькание экрана при пропечатывании количества
Echo false

Echo true

- На форме со списком накладных текущая запись перемещается на начало списка.
Bookmark запомнить и восстановить
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32409292
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
из хелпа: Метод Recalc немедленно обновляет все вычисляемые элементы управления в форме.

В хелпе про переход на первую запись ничего не сказано... И у меня не переходит. Ерунда это. Такое впечатление, что вместо (или вместе с) recalc ты используешь refresh или requery.

А мигает - ты не сказал, что содержится в поле "Сумма"...
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32409720
Фотография AlexJuice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И вовсе Requery не излишне!
Только его надо делать полю суммы, а не всей фломы, вот и всё.
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32409727
Vitaly223
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Geo
Метод Recalc срабатывает при окончании изменения в поле "Количество". И на текущей форме, где выведена табличная часть накладной нет перехода на новую запись. Переход на первую запись происходит на другой форме .
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32409729
Фотография AlexJuice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Vitaly223:
Me.Сумма.Requery
Помогает?
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32409835
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вообще , странно,
имеется таблица sss: кол-во, цена и т.д.
и еще таблица ххх с полем (кол-во*цена) из предыдущей таблицы
неужели накладные состоят из стольких записей, что при формировании какой-то отображающей таблицы долго будет считаться кл-во*цена?

дублирование, защита ?

и почему не сделать подформу?
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32409846
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roalex
> Чтобы сумма выводилась та, необходимо сохранить запись, в которой
> производились изменения.

А я-то куда? Конечно, надо просто запись сохранить, тогда и пересчитается все.

Если в поле сумма источник данных типа "=[Колво]*[Цена]", то

Private Sub Количество_AfterUpdate()
docmd.runcommand accmdsaverecord
End Sub

После этого в примечании уже находится актуальная сумма, которую можно перенести программно в поле другой формы (если в нем уже не написано "=Forms!blabla!sumField") или же вывести в мсгбоксе.

2AlexJuice
а реквери зачем? Я так и не увидел ни в 97-м, ни в 2000-м хелпе, зачем оно нужно в применении me.текстбокс.requery?
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32409866
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
форма где цена и количество, похоже, всплывающая.
и переносить сумму нада либо на закрытия формы, либо на событие после изменения полей цена и количество.
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32410962
Фотография AlexJuice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Geo:
Плохо искал...
Object Browser -> Access / TextBox / Requery

Help
Requery Method (Control or Form Object)
The Requery method updates the data underlying a specified form,
or a control that's on the active form, by requerying the source of data for the form or control
В данном случае источник - формула. Вот ее-то я и предлагаю пересчитать.
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32411026
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2AlexJuice
The Requery method does one of the following:

Reruns the query on which the form or control is based.
Displays any new or changed records or removes deleted records from the table on which the form or control is based.
Updates records displayed based on any changes to the Filter property of the form.
Controls based on a query or table include:

- List boxes and combo boxes.
- Subform controls.
- OLE objects, such as charts.
- Controls for which the ControlSource property setting includes domain aggregate - functions or SQL aggregate function.


Это я читал.

If the object specified by expression isn't bound to a field in a table or query, the Requery method forces a recalculation of the control.

А это - нет :)
(правда я еще не встречался с необходимостью делать requery для подобных полей)
...
Рейтинг: 0 / 0
Расчет суммы накладной.
    #32411033
Фотография AlexJuice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Geo: видать, с разных концов мы хелп читали
Или разных версий
...
Рейтинг: 0 / 0
25 сообщений из 29, страница 1 из 2
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Расчет суммы накладной.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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