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

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

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

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

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

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

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

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

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

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

Echo true

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

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

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

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

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

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

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

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

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

2AlexJuice
а реквери зачем? Я так и не увидел ни в 97-м, ни в 2000-м хелпе, зачем оно нужно в применении me.текстбокс.requery?
...
Рейтинг: 0 / 0
15.02.2004, 22:13
    #32409866
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Расчет суммы накладной.
форма где цена и количество, похоже, всплывающая.
и переносить сумму нада либо на закрытия формы, либо на событие после изменения полей цена и количество.
...
Рейтинг: 0 / 0
16.02.2004, 18:31
    #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
16.02.2004, 19:40
    #32411026
Geo
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
16.02.2004, 19:48
    #32411033
AlexJuice
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Расчет суммы накладной.
2 Geo: видать, с разных концов мы хелп читали
Или разных версий
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Расчет суммы накладной. / 25 сообщений из 29, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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