Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: как вычислить?
 
 автор: МаксФактор   (16.09.2009 в 22:54)   личное сообщение
 
 

Access 2002; в табличной форме есть вычисляемое поле, оно для каждого товара делит кол-во отгруженной продукции на вес одной упаковки и получается кол-во упаковок. Пишу формулу: "Данные=[Количество]/[ПолеВес]", но этот результат не изменить в ручную (а бывают нестандартные товары когда надо), попробовал эту формулу поставить в "значение по умолчанию" : она както криво вычисляет - у первой строчки вычисляет правильно, а следующим присваивает значение первой строчки. Как сделать, не могу придумать, подскажите кто знает

  Ответить  
 
 автор: Гамлет   (16.09.2009 в 23:32)   личное сообщение
 
 

Можно так: на событие Афтер Апдейт для формы
Ме.Данные=[Количество]/[ПолеВес]


но это неправильно, потому что данные которые можно посчитать в таблицах не хранят

  Ответить  
 
 автор: МаксФактор   (16.09.2009 в 23:53)   личное сообщение
 
 

так я их не храню, я их в отчете распечатываю

  Ответить  
 
 автор: Гамлет   (17.09.2009 в 00:02)   личное сообщение
 
 

Тогда попробуй сделать как я показал раньше, но помни что поле [Данные] будет пересчитываться каждый раз при изменеии полей [Количество] или [ПолеВес]

  Ответить  
 
 автор: МаксФактор   (17.09.2009 в 00:13)   личное сообщение
 
 

что то пока не получается, завтра еще попробую

  Ответить  
 
 автор: snipe   (17.09.2009 в 05:30)   личное сообщение
 
 

а зачем на Афтер Апдейт формы?
а почему не на Афтер Апдейт полей количество и вес

  Ответить  
 
 автор: kot_k_k   (17.09.2009 в 09:22)   личное сообщение
 
 

Как вариант ввести лог поле знач true - формула вычисляется, знач False не вычисляется, а пишется руками или берется откудато.
А если идет процесс заполнения формы то АффтерАпдейт значения Кол-во и дает запуск проги на заполнение поля Данные или не дает в зависимости от поля Tru/False
Это поле есть смысл ввести в таблу - Описание Наименования ( там где и стоит Вес)

  Ответить  
 
 автор: МаксФактор   (17.09.2009 в 22:48)   личное сообщение
 
 

Галочки ставить это на крайний вариант - пользователю надо чем попроще тем лучше(60 лет начальнице)

  Ответить  
 
 автор: kot_k_k   (18.09.2009 в 08:53)   личное сообщение
 
 

Галочки ставятся при вводе нового Наименования - в описаниях его параметров - т.е. один раз.

  Ответить  
 
 автор: Explorer   (18.09.2009 в 10:09)   личное сообщение
 
 

галочки не ставятся - просто вводится "поправочный коэффициент" если нужен

хранятся данные и коэффициент, если коэффициент не введен рассчитывается непосредственное значение

[количество]/(1*[вес])=Х

а если коэффициент введен рассчитывается приведенное значение [количество]/(<коэффициент>*[вес])=Х

если пользователь не готов рассчитывать и вводить коэффициент "в рукопашную" он может, например, ввести количество, вес и результат - коэффициент будет рассчитан програмно и сохранен в поле коэффициент для этого вида товара или типа упаковки.

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

ЗЫ

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

просто любопытно 40 банок тушенки разделить на 3 килограмма - и что получаете в результате?

  Ответить  
 
 автор: kot_k_k   (18.09.2009 в 10:48)   личное сообщение
 
 

Масса нетто, Масса - брутто
40 банок / 3 человека = 13,33333333 литра одки
это специальный расчет, который показывает необходимое кол-во напитка при наличии закуски, обратно пропорционален формуле 3 бутылки + 2 ириски.

  Ответить  
 
 автор: МаксФактор   (17.09.2009 в 22:58)   личное сообщение
 
 

Попрововал все ваши варианты, но получается какойто странный подсчет: все поле с одинаковыми значениями т.е. оно вычисляет для первой строчки и этот результат повторяется во всех остальных строчках. А если я указываю эту формулу =[Количество]/[ПолеВес] в режиме конструктора в свойстве "данные" этого вычисляемого поля, то он считает все как надо, но вручную уже не изменить
Вроде задача не из сложных, но не понятно как сделать!

  Ответить  
 
 автор: Гамлет   (17.09.2009 в 23:22)   личное сообщение
 
 

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

Это потому что поле свободное (без источника данных)

А если я указываю эту формулу =[Количество]/[ПолеВес] в режиме конструктора в свойстве "данные" этого вычисляемого поля, то он считает все как надо, но вручную уже не изменить

Чтобы можно было править поле, оно должно быть привязано к какой то таблице.
ИМХО оставьте это поле вычисляемым (=[Количество]/[ПолеВес]), а для нестандартных товаров придумайте другой алгоритм расчёта

  Ответить  
 
 автор: МаксФактор   (17.09.2009 в 23:32)   личное сообщение
 
 

Спс за идею, буду пробовать)

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList