Войти
NeoBooker.ru
Добро пожаловать к нам в гости!
Наш сайт посвящён программе NeoBook, с помощью которой вы легко сможете создавать собственные мультимедиа-приложения без необходимости изучать сложные языки программирования! Зарегистрируйтесь, чтобы стать членом нашего сообщества.
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Модератор форума: Peter, DEMBEL, YURIY  
Выполнить мат.условие из переменной
СергейДата: Сб, 28 Июля 2012, 10:48 | Сообщение # 1
Необукер
Делаю проект для знакомой, она рекламщица
Проект по расчету стоимости заказа
Есть БД (max) с двумя таблицами
1-usluga=тут хранятся услуги
2-material=тут хранятся расценки на материал
При выборе услуги из таблицы(usluga) ячейка(raschet) содержит такую запись:
[space]*[max.material.banr2]+2*([width]+[height])*[max.material.luver]
где, width=ширина банера,height=высота банера,space=площадь банера
Например:width=2,height=2,space=4,max.material.luver=140,max.material.banr2=200
Необходимо выполнить
Code
Math "[space]*[max.material.banr2]+2*([width]+[height])*[max.material.luver]" "2" "[result]"

так все работает, но если так:
Code
Math "[max.usluga.raschet]" "2" "[result]"

то нет :(
Каким способом можно выполнить формулу из переменной?


Сообщение отредактировано
Сергей - Сб, 28 Июля 2012, 11:27
 
СообщениеДелаю проект для знакомой, она рекламщица
Проект по расчету стоимости заказа
Есть БД (max) с двумя таблицами
1-usluga=тут хранятся услуги
2-material=тут хранятся расценки на материал
При выборе услуги из таблицы(usluga) ячейка(raschet) содержит такую запись:
[space]*[max.material.banr2]+2*([width]+[height])*[max.material.luver]
где, width=ширина банера,height=высота банера,space=площадь банера
Например:width=2,height=2,space=4,max.material.luver=140,max.material.banr2=200
Необходимо выполнить
Code
Math "[space]*[max.material.banr2]+2*([width]+[height])*[max.material.luver]" "2" "[result]"

так все работает, но если так:
Code
Math "[max.usluga.raschet]" "2" "[result]"

то нет :(
Каким способом можно выполнить формулу из переменной?

Автор - Сергей
Дата добавления - 28 Июля 2012 в 10:48
PeterДата: Сб, 28 Июля 2012, 12:01 | Сообщение # 2
Админ NeoBook
Quote (Сергей)
но если так:
Код
Math "[max.usluga.raschet]" "2" "[result]"
то нет


А что именно содержится в переменной [max.usluga.raschet] ?


- А вам какую операционку поставить - экспи, семерку или висту?
- Это ты сейчас о чем?
- Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный?
- Ну, конечно, надежный!
- Вот, значит - экспи, без вопросов! Сейчас сделаем...

(Улицы разбитых фонарей, сезон 10, серия 17)

Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!


При модном втюхе модоподдающимся начинает нравиться
 
Сообщение
Quote (Сергей)
но если так:
Код
Math "[max.usluga.raschet]" "2" "[result]"
то нет


А что именно содержится в переменной [max.usluga.raschet] ?

Автор - Peter
Дата добавления - 28 Июля 2012 в 12:01
СергейДата: Сб, 28 Июля 2012, 12:44 | Сообщение # 3
Необукер
Quote
При выборе услуги из таблицы(usluga) ячейка(raschet) содержит такую запись: [space]*[max.material.banr2]+2*([width]+[height])*[max.material.luver]

Можно не замарачиватся с БД , а просто поместить данную строку:
Quote
[space]*[banr2]+2*([width]+[height])*[luver]
в объект TextEntry и задать ей переменную "action"
и выполнить команду:
Code
Math "[action]" "2" "[result]"
результат будет Error
НБ не подставляет значения...
.
Я сделал тестовый пример.
Прикрепления: test.rar (2.4 Kb)


Сообщение отредактировано
Сергей - Сб, 28 Июля 2012, 12:45
 
Сообщение
Quote
При выборе услуги из таблицы(usluga) ячейка(raschet) содержит такую запись: [space]*[max.material.banr2]+2*([width]+[height])*[max.material.luver]

Можно не замарачиватся с БД , а просто поместить данную строку:
Quote
[space]*[banr2]+2*([width]+[height])*[luver]
в объект TextEntry и задать ей переменную "action"
и выполнить команду:
Code
Math "[action]" "2" "[result]"
результат будет Error
НБ не подставляет значения...
.
Я сделал тестовый пример.

Автор - Сергей
Дата добавления - 28 Июля 2012 в 12:44
PeterДата: Сб, 28 Июля 2012, 14:03 | Сообщение # 4
Админ NeoBook
Quote (Сергей)
Я сделал тестовый пример.


Теперь понятно...

На первый взгляд выглядит как глюк NeoBook, но это только на первый.

Загвоздка здесь вот в чем...
Когда мы пишем:
Code
Math "[action]" "2" "[result]"

Это означает, что NeoBook прочитает содержимое переменной [action], и просто подставит его в формулу.
Что там (в этой переменной) конкретно находится не имеет значения, будет тупо подставлено содержимое (а там у нас просто текст), после чего пойдет расчет по формуле, но переменная [action] не является формулой, она лишь часть (элемент, значение, один из аргументов) формулы.

Точно также не прокатит команда:
Code
SetVar "[result]" "[action]"

В [Result] будет "[space]*[banr2]+2*([width]+[height])*[luver]", но не результат вычисления.

А вот так:
Code
SetVar "[result]" "[space]*[banr2]+2*([width]+[height])*[luver]"

все уже заработает, как и в случае:

Code
Math "[space]*[max.material.banr2]+2*([width]+[height])*[max.material.luver]" "2" "[result]"


Quote (Сергей)
Каким способом можно выполнить формулу из переменной?

По этой "схеме" не работает и плагин npCalc.

Тут надо подумать...
scratch

Пока ничего положительного в голову не приходит...

А для чего нужно в формулу подставлять именно из переменной?
Может можно как-то иначе решить задачу?


- А вам какую операционку поставить - экспи, семерку или висту?
- Это ты сейчас о чем?
- Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный?
- Ну, конечно, надежный!
- Вот, значит - экспи, без вопросов! Сейчас сделаем...

(Улицы разбитых фонарей, сезон 10, серия 17)

Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!


При модном втюхе модоподдающимся начинает нравиться
 
Сообщение
Quote (Сергей)
Я сделал тестовый пример.


Теперь понятно...

На первый взгляд выглядит как глюк NeoBook, но это только на первый.

Загвоздка здесь вот в чем...
Когда мы пишем:
Code
Math "[action]" "2" "[result]"

Это означает, что NeoBook прочитает содержимое переменной [action], и просто подставит его в формулу.
Что там (в этой переменной) конкретно находится не имеет значения, будет тупо подставлено содержимое (а там у нас просто текст), после чего пойдет расчет по формуле, но переменная [action] не является формулой, она лишь часть (элемент, значение, один из аргументов) формулы.

Точно также не прокатит команда:
Code
SetVar "[result]" "[action]"

В [Result] будет "[space]*[banr2]+2*([width]+[height])*[luver]", но не результат вычисления.

А вот так:
Code
SetVar "[result]" "[space]*[banr2]+2*([width]+[height])*[luver]"

все уже заработает, как и в случае:

Code
Math "[space]*[max.material.banr2]+2*([width]+[height])*[max.material.luver]" "2" "[result]"


Quote (Сергей)
Каким способом можно выполнить формулу из переменной?

По этой "схеме" не работает и плагин npCalc.

Тут надо подумать...
scratch

Пока ничего положительного в голову не приходит...

А для чего нужно в формулу подставлять именно из переменной?
Может можно как-то иначе решить задачу?

Автор - Peter
Дата добавления - 28 Июля 2012 в 14:03
СергейДата: Сб, 28 Июля 2012, 14:54 | Сообщение # 5
Необукер
Quote (Peter)
А для чего нужно в формулу подставлять именно из переменной? Может можно как-то иначе решить задачу?
В услугах 97 наименований и для каждой своя формула расчета.
Для быстроты и простоты я решил выбрать это направление, но уткнулся в сабж :(
Формулы зашивать в проект, да и 97 подпрограмм я решил не делать.
Других решений организаций пока нет, в голову ничего путного не лезет...

Добавлено (28 Июля 2012, 14:54)
---------------------------------------------

Quote (Peter)
По этой "схеме" не работает и плагин npCalc.
и другие плаги с мат. уклоном тоже не пашут.
единственное, что пока работает это Call, но тут уже внешний файл. Ищу другие варианты может что найду
 
Сообщение
Quote (Peter)
А для чего нужно в формулу подставлять именно из переменной? Может можно как-то иначе решить задачу?
В услугах 97 наименований и для каждой своя формула расчета.
Для быстроты и простоты я решил выбрать это направление, но уткнулся в сабж :(
Формулы зашивать в проект, да и 97 подпрограмм я решил не делать.
Других решений организаций пока нет, в голову ничего путного не лезет...

Добавлено (28 Июля 2012, 14:54)
---------------------------------------------

Quote (Peter)
По этой "схеме" не работает и плагин npCalc.
и другие плаги с мат. уклоном тоже не пашут.
единственное, что пока работает это Call, но тут уже внешний файл. Ищу другие варианты может что найду

Автор - Сергей
Дата добавления - 28 Июля 2012 в 14:54
PeterДата: Сб, 28 Июля 2012, 15:43 | Сообщение # 6
Админ NeoBook
Quote (Сергей)
Для быстроты и простоты я решил выбрать это направление

Так формулы-то все-равно потребуется вручную прописывать.
Quote (Сергей)
Формулы зашивать в проект, да и 97 подпрограмм я решил не делать.

А как тогда считать, без формул?

Чего-то я ничего не понимаю...
%)
Quote (Сергей)
единственное, что пока работает это Call, но тут уже внешний файл

И почему это так плохо?
Call это означет вызов функции, а она зашивается в проект при компиляции.

В любом случае, без функции или подпрограммы (которая заменяет в формуле имена переменных на их значения) не обойтись.


- А вам какую операционку поставить - экспи, семерку или висту?
- Это ты сейчас о чем?
- Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный?
- Ну, конечно, надежный!
- Вот, значит - экспи, без вопросов! Сейчас сделаем...

(Улицы разбитых фонарей, сезон 10, серия 17)

Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!


При модном втюхе модоподдающимся начинает нравиться
 
Сообщение
Quote (Сергей)
Для быстроты и простоты я решил выбрать это направление

Так формулы-то все-равно потребуется вручную прописывать.
Quote (Сергей)
Формулы зашивать в проект, да и 97 подпрограмм я решил не делать.

А как тогда считать, без формул?

Чего-то я ничего не понимаю...
%)
Quote (Сергей)
единственное, что пока работает это Call, но тут уже внешний файл

И почему это так плохо?
Call это означет вызов функции, а она зашивается в проект при компиляции.

В любом случае, без функции или подпрограммы (которая заменяет в формуле имена переменных на их значения) не обойтись.

Автор - Peter
Дата добавления - 28 Июля 2012 в 15:43
PeterДата: Сб, 28 Июля 2012, 16:05 | Сообщение # 7
Админ NeoBook
Вот, примерно так может выглядеть решение.
См прикрепление.
Прикрепления: testEx.zip (2.7 Kb)


- А вам какую операционку поставить - экспи, семерку или висту?
- Это ты сейчас о чем?
- Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный?
- Ну, конечно, надежный!
- Вот, значит - экспи, без вопросов! Сейчас сделаем...

(Улицы разбитых фонарей, сезон 10, серия 17)

Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!


При модном втюхе модоподдающимся начинает нравиться
 
СообщениеВот, примерно так может выглядеть решение.
См прикрепление.

Автор - Peter
Дата добавления - 28 Июля 2012 в 16:05
СергейДата: Сб, 28 Июля 2012, 16:40 | Сообщение # 8
Необукер
Quote (Peter)
Так формулы-то все-равно потребуется вручную прописывать.
так они и прописаны в БД
Quote (Peter)
А как тогда считать, без формул?
почему без формул, они будут находится в бд
Задумка в том, что формулы извлекаются из бд в виде строки (a+b*c), а уж в НБ их просчитывать.
+ получаем динамические формулы, которые легко можно изменять.
Quote (Peter)
И почему это так плохо?
она срабатывает только раз, т.к. загружается при запуске. И если изменить функцию после, то исполнятся все равно первоначальное :D
Quote (Peter)
См прикрепление.
посмотрю

Добавлено (28 Июля 2012, 16:39)
---------------------------------------------
интересно, а в 1С как такое реализовано, там ведь формулы тоже в бд лежат

Добавлено (28 Июля 2012, 16:40)
---------------------------------------------
Вот я тупанул про 1С %)
:D

Сообщение отредактировано
Сергей - Сб, 28 Июля 2012, 16:33
 
Сообщение
Quote (Peter)
Так формулы-то все-равно потребуется вручную прописывать.
так они и прописаны в БД
Quote (Peter)
А как тогда считать, без формул?
почему без формул, они будут находится в бд
Задумка в том, что формулы извлекаются из бд в виде строки (a+b*c), а уж в НБ их просчитывать.
+ получаем динамические формулы, которые легко можно изменять.
Quote (Peter)
И почему это так плохо?
она срабатывает только раз, т.к. загружается при запуске. И если изменить функцию после, то исполнятся все равно первоначальное :D
Quote (Peter)
См прикрепление.
посмотрю

Добавлено (28 Июля 2012, 16:39)
---------------------------------------------
интересно, а в 1С как такое реализовано, там ведь формулы тоже в бд лежат

Добавлено (28 Июля 2012, 16:40)
---------------------------------------------
Вот я тупанул про 1С %)
:D


Автор - Сергей
Дата добавления - 28 Июля 2012 в 16:40
PeterДата: Сб, 28 Июля 2012, 17:26 | Сообщение # 9
Админ NeoBook
Quote (Сергей)
она срабатывает только раз, т.к. загружается при запуске. И если изменить функцию после, то исполнятся все равно первоначальное

Не понял.
Это ты об чем?
Похоже, что мы про какие-то разные Call говорим...
%)

Quote (Сергей)
Вот я тупанул про 1С

А что такое?


- А вам какую операционку поставить - экспи, семерку или висту?
- Это ты сейчас о чем?
- Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный?
- Ну, конечно, надежный!
- Вот, значит - экспи, без вопросов! Сейчас сделаем...

(Улицы разбитых фонарей, сезон 10, серия 17)

Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!


При модном втюхе модоподдающимся начинает нравиться
 
Сообщение
Quote (Сергей)
она срабатывает только раз, т.к. загружается при запуске. И если изменить функцию после, то исполнятся все равно первоначальное

Не понял.
Это ты об чем?
Похоже, что мы про какие-то разные Call говорим...
%)

Quote (Сергей)
Вот я тупанул про 1С

А что такое?

Автор - Peter
Дата добавления - 28 Июля 2012 в 17:26
СергейДата: Сб, 28 Июля 2012, 18:41 | Сообщение # 10
Необукер
Quote (Peter)
Похоже, что мы про какие-то разные Call говорим...

две кнопки в одной
Code
FileWrite "[PubDir]func" "All" "Math [#34]2+2[#34] [#34]2[#34] [#34][#91]result[#93][#34]"
Call "[PubDir]func"

в другой
Code
FileWrite "[PubDir]func" "All" "Math [#34]4+4[#34] [#34]2[#34] [#34][#91]result[#93][#34]"
Call "[PubDir]func"

Нажимаем первую - результат 4,00 - все верно
Жмем вторую - результат 4,00 - не верно
Забудем пока про Call, все равно не буду делать, есть плачевный опыт, я уже делал динамический проект, многое реализовал через Call Не все так гладко в этой команде с динамикой....

Сделал временно (страшно подумать что так и останется :D ) через парсер.
Может кто еще подкинет какую нить элегантную идею, выполнить формулу из переменной :)

Добавлено (28 Июля 2012, 18:41)
---------------------------------------------


Сообщение отредактировано
Сергей - Сб, 28 Июля 2012, 18:41
 
Сообщение
Quote (Peter)
Похоже, что мы про какие-то разные Call говорим...

две кнопки в одной
Code
FileWrite "[PubDir]func" "All" "Math [#34]2+2[#34] [#34]2[#34] [#34][#91]result[#93][#34]"
Call "[PubDir]func"

в другой
Code
FileWrite "[PubDir]func" "All" "Math [#34]4+4[#34] [#34]2[#34] [#34][#91]result[#93][#34]"
Call "[PubDir]func"

Нажимаем первую - результат 4,00 - все верно
Жмем вторую - результат 4,00 - не верно
Забудем пока про Call, все равно не буду делать, есть плачевный опыт, я уже делал динамический проект, многое реализовал через Call Не все так гладко в этой команде с динамикой....

Сделал временно (страшно подумать что так и останется :D ) через парсер.
Может кто еще подкинет какую нить элегантную идею, выполнить формулу из переменной :)

Добавлено (28 Июля 2012, 18:41)
---------------------------------------------

Автор - Сергей
Дата добавления - 28 Июля 2012 в 18:41
PeterДата: Сб, 28 Июля 2012, 19:10 | Сообщение # 11
Админ NeoBook
Quote (Сергей)
Нажимаем первую - результат 4,00 - все верно

Жмем вторую - результат 4,00 - не верно

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

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

Quote (Сергей)
Может кто еще подкинет какую нить элегантную идею, выполнить формулу из переменной

А чем не устраивает решение, предложенное мной?
Это аккурат то, что требуется.
Или 13 строк кода это слишком много?

А, если по-уму, то надо бы добавить ещё пару строк.
:)

Quote (Сергей)
не знаю зачем, делфи

scared
Вот это и впрямь интересно!!!
Покаж, где это?

Добавлено (28 Июля 2012, 19:10)
---------------------------------------------
Quote (Сергей)
Вот тут как раз и спасла бы такая фича

А это не подходит?


- А вам какую операционку поставить - экспи, семерку или висту?
- Это ты сейчас о чем?
- Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный?
- Ну, конечно, надежный!
- Вот, значит - экспи, без вопросов! Сейчас сделаем...

(Улицы разбитых фонарей, сезон 10, серия 17)

Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!


При модном втюхе модоподдающимся начинает нравиться
 
Сообщение
Quote (Сергей)
Нажимаем первую - результат 4,00 - все верно

Жмем вторую - результат 4,00 - не верно

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

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

Quote (Сергей)
Может кто еще подкинет какую нить элегантную идею, выполнить формулу из переменной

А чем не устраивает решение, предложенное мной?
Это аккурат то, что требуется.
Или 13 строк кода это слишком много?

А, если по-уму, то надо бы добавить ещё пару строк.
:)

Quote (Сергей)
не знаю зачем, делфи

scared
Вот это и впрямь интересно!!!
Покаж, где это?

Добавлено (28 Июля 2012, 19:10)
---------------------------------------------
Quote (Сергей)
Вот тут как раз и спасла бы такая фича

А это не подходит?

Автор - Peter
Дата добавления - 28 Июля 2012 в 19:10
СергейДата: Сб, 28 Июля 2012, 20:53 | Сообщение # 12
Необукер
Quote (Peter)
А чем не устраивает решение, предложенное мной? Это аккурат то, что требуется. Или 13 строк кода это слишком много?
я пока подобное и использую
Quote (Peter)
Покаж, где это?
надо поискать, да вроде на форуме тоже выкладывали
Quote (Peter)
А это не подходит?
при первом моем знакомстве, он не исполнял код из TextEntry
Сейчас еще раз скачаю и посмотрю
 
Сообщение
Quote (Peter)
А чем не устраивает решение, предложенное мной? Это аккурат то, что требуется. Или 13 строк кода это слишком много?
я пока подобное и использую
Quote (Peter)
Покаж, где это?
надо поискать, да вроде на форуме тоже выкладывали
Quote (Peter)
А это не подходит?
при первом моем знакомстве, он не исполнял код из TextEntry
Сейчас еще раз скачаю и посмотрю

Автор - Сергей
Дата добавления - 28 Июля 2012 в 20:53
PeterДата: Вс, 29 Июля 2012, 00:17 | Сообщение # 13
Админ NeoBook
Quote (Сергей)
я пока подобное и использую

Ну так если работает, то что ещё надо-то?
На других языках работать лучше не будет.
Разьве-что (может быть) чуточку быстрее на формулах длиною в километр.
:)

А вообще, у NeoBook очень хороший язык, и по скорости даже превосходит VBS на однотипных скриптах!
Проверяли как-то давно с Дембелем.
;)
Другое дело, что в NB функций маловато в сравнение с VBS.



- А вам какую операционку поставить - экспи, семерку или висту?
- Это ты сейчас о чем?
- Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный?
- Ну, конечно, надежный!
- Вот, значит - экспи, без вопросов! Сейчас сделаем...

(Улицы разбитых фонарей, сезон 10, серия 17)

Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!


При модном втюхе модоподдающимся начинает нравиться
 
Сообщение
Quote (Сергей)
я пока подобное и использую

Ну так если работает, то что ещё надо-то?
На других языках работать лучше не будет.
Разьве-что (может быть) чуточку быстрее на формулах длиною в километр.
:)

А вообще, у NeoBook очень хороший язык, и по скорости даже превосходит VBS на однотипных скриптах!
Проверяли как-то давно с Дембелем.
;)
Другое дело, что в NB функций маловато в сравнение с VBS.


Автор - Peter
Дата добавления - 29 Июля 2012 в 00:17
СергейДата: Вс, 29 Июля 2012, 08:15 | Сообщение # 14
Необукер
Quote (Peter)
Разьве-что (может быть) чуточку быстрее на формулах длиною в километр.

я переделал немного по другому. Вот два варианта:

И с использованием плагина hpwPlayAction. Разобрался я с ним и понял почему не работало в первый раз.
Оказалось, что когда я добавлял команду, то плагин приводил скобки в ascii вид
И есно при обработке данные не подменялись и ничего не происходило:

Вручную вернул скобки и заработало

И еще вариант в Сообщение # 7

Не знаю, что лучше использовать для простоты дальнейшего использования - плагин или "парсер"?!

Добавлено (29 Июля 2012, 08:15)
---------------------------------------------
кто нибудь изучал плагин hpwPlayAction?
Отпишите, кто его заюзал


Сообщение отредактировано
Сергей - Вс, 29 Июля 2012, 08:18
 
Сообщение
Quote (Peter)
Разьве-что (может быть) чуточку быстрее на формулах длиною в километр.

я переделал немного по другому. Вот два варианта:

И с использованием плагина hpwPlayAction. Разобрался я с ним и понял почему не работало в первый раз.
Оказалось, что когда я добавлял команду, то плагин приводил скобки в ascii вид
И есно при обработке данные не подменялись и ничего не происходило:

Вручную вернул скобки и заработало

И еще вариант в Сообщение # 7

Не знаю, что лучше использовать для простоты дальнейшего использования - плагин или "парсер"?!

Добавлено (29 Июля 2012, 08:15)
---------------------------------------------
кто нибудь изучал плагин hpwPlayAction?
Отпишите, кто его заюзал

Автор - Сергей
Дата добавления - 29 Июля 2012 в 08:15
PeterДата: Вс, 29 Июля 2012, 14:50 | Сообщение # 15
Админ NeoBook
Quote (Сергей)
что лучше использовать

Что использовать это вопрос "филосовский".
Скрипт в сообщении 7 не лишен недостатка - неправильно обрабатываются составные переменные (правда, это можно попытаться и доработать), приведенный чуть выше скрипт (не проверял) вроде бы свободен от этого недостатка, но требует мудреного написания формулы.

Я бы, лично, однозначно предпочел скрипт, т.к. убежден в том, что плагины нужно применять только тогда, когда без них никак, а кто-нибудь другой скажет: да нафига строчить кучу кода, когда можно обойтись одной строчкой.
;)


- А вам какую операционку поставить - экспи, семерку или висту?
- Это ты сейчас о чем?
- Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный?
- Ну, конечно, надежный!
- Вот, значит - экспи, без вопросов! Сейчас сделаем...

(Улицы разбитых фонарей, сезон 10, серия 17)

Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!


При модном втюхе модоподдающимся начинает нравиться
 
Сообщение
Quote (Сергей)
что лучше использовать

Что использовать это вопрос "филосовский".
Скрипт в сообщении 7 не лишен недостатка - неправильно обрабатываются составные переменные (правда, это можно попытаться и доработать), приведенный чуть выше скрипт (не проверял) вроде бы свободен от этого недостатка, но требует мудреного написания формулы.

Я бы, лично, однозначно предпочел скрипт, т.к. убежден в том, что плагины нужно применять только тогда, когда без них никак, а кто-нибудь другой скажет: да нафига строчить кучу кода, когда можно обойтись одной строчкой.
;)

Автор - Peter
Дата добавления - 29 Июля 2012 в 14:50
СергейДата: Вс, 29 Июля 2012, 15:22 | Сообщение # 16
Необукер
Quote (Peter)
но требует мудреного написания формулы.
отнюдь, прогнать через конвертер win_to_ascii и все.
Формулы лепятся в простой до ужаса форме, тут я не стал мудрить.
Каждый элемент выбирается из выпадающего списка :D
При выборе из списка все мат.элементы прогонять через конвертер.
Прикрепления: 8667649.jpg (36.1 Kb)
 
Сообщение
Quote (Peter)
но требует мудреного написания формулы.
отнюдь, прогнать через конвертер win_to_ascii и все.
Формулы лепятся в простой до ужаса форме, тут я не стал мудрить.
Каждый элемент выбирается из выпадающего списка :D
При выборе из списка все мат.элементы прогонять через конвертер.

Автор - Сергей
Дата добавления - 29 Июля 2012 в 15:22
mishemДата: Вс, 29 Июля 2012, 15:41 | Сообщение # 17
Эксперт форума
Сергей,
Quote (Сергей)
Задумка в том, что формулы извлекаются из бд в виде строки (a+b*c), а уж в НБ их просчитывать.

А если формулы извлекать не в виде строки, а в виде переменных([a]+[b]*[c]) ?

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



Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.


Сообщение отредактировано
mishem - Вс, 29 Июля 2012, 15:56
 
СообщениеСергей,
Quote (Сергей)
Задумка в том, что формулы извлекаются из бд в виде строки (a+b*c), а уж в НБ их просчитывать.

А если формулы извлекать не в виде строки, а в виде переменных([a]+[b]*[c]) ?

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


Автор - mishem
Дата добавления - 29 Июля 2012 в 15:41
PeterДата: Вс, 29 Июля 2012, 17:31 | Сообщение # 18
Админ NeoBook
Quote (Сергей)
отнюдь, прогнать через конвертер win_to_ascii и все.
Формулы лепятся в простой до ужаса форме, тут я не стал мудрить.
Каждый элемент выбирается из выпадающего списка
При выборе из списка все мат.элементы прогонять через конвертер.

Ну так и чего ты тогда заморачиваешься коли работает?
:)
Quote (mishem)
А вообще, выложил бы набросок проекта с базой что и как. Мне почему то кажется что направление не то.

Тоже верно.
Про "направление" не знаю, но вот увидеть, так-сказать, "живьем" совсем другое дело.


- А вам какую операционку поставить - экспи, семерку или висту?
- Это ты сейчас о чем?
- Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный?
- Ну, конечно, надежный!
- Вот, значит - экспи, без вопросов! Сейчас сделаем...

(Улицы разбитых фонарей, сезон 10, серия 17)

Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!


При модном втюхе модоподдающимся начинает нравиться
 
Сообщение
Quote (Сергей)
отнюдь, прогнать через конвертер win_to_ascii и все.
Формулы лепятся в простой до ужаса форме, тут я не стал мудрить.
Каждый элемент выбирается из выпадающего списка
При выборе из списка все мат.элементы прогонять через конвертер.

Ну так и чего ты тогда заморачиваешься коли работает?
:)
Quote (mishem)
А вообще, выложил бы набросок проекта с базой что и как. Мне почему то кажется что направление не то.

Тоже верно.
Про "направление" не знаю, но вот увидеть, так-сказать, "живьем" совсем другое дело.

Автор - Peter
Дата добавления - 29 Июля 2012 в 17:31
СергейДата: Вс, 29 Июля 2012, 18:30 | Сообщение # 19
Необукер
Quote (mishem)
А вообще, выложил бы набросок проекта с базой что и как.

Quote (Peter)
Тоже верно.
в сообщение 3 есть пример
Просто в примере одна формула, а в бд их 91.
Такая задумка, сделать формулы динамичные, а не зашивать в проект.
По другому пока не получается организовать, а возможно и нет других вариантов.

Добавлено (29 Июля 2012, 18:30)
---------------------------------------------
Хотя, сейчас залью демку

 
Сообщение
Quote (mishem)
А вообще, выложил бы набросок проекта с базой что и как.

Quote (Peter)
Тоже верно.
в сообщение 3 есть пример
Просто в примере одна формула, а в бд их 91.
Такая задумка, сделать формулы динамичные, а не зашивать в проект.
По другому пока не получается организовать, а возможно и нет других вариантов.

Добавлено (29 Июля 2012, 18:30)
---------------------------------------------
Хотя, сейчас залью демку


Автор - Сергей
Дата добавления - 29 Июля 2012 в 18:30
СергейДата: Вс, 29 Июля 2012, 18:57 | Сообщение # 20
Необукер
Демка и файл бд
Внимание, для второго варианта расчета нужен плагин hpwPlayAction.
Если он не установлен, то за комментировать код в кнопке "Расчет hpwPlayAction"
Прикрепления: 5128970.rar (27.6 Kb)
 
СообщениеДемка и файл бд
Внимание, для второго варианта расчета нужен плагин hpwPlayAction.
Если он не установлен, то за комментировать код в кнопке "Расчет hpwPlayAction"

Автор - Сергей
Дата добавления - 29 Июля 2012 в 18:57
PeterДата: Пн, 30 Июля 2012, 00:04 | Сообщение # 21
Админ NeoBook
Quote (Сергей)
Демка и файл бд


Не знаю, но чего-то у меня все время Error:



Чего только не подставлял в ширину и высоту, да и в услуги.
:'(

Плагин hpwPlayAction не установлен, и пользовал расчет скриптом.
Прикрепления: 8936646.png (8.2 Kb)


- А вам какую операционку поставить - экспи, семерку или висту?
- Это ты сейчас о чем?
- Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный?
- Ну, конечно, надежный!
- Вот, значит - экспи, без вопросов! Сейчас сделаем...

(Улицы разбитых фонарей, сезон 10, серия 17)

Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!


При модном втюхе модоподдающимся начинает нравиться
 
Сообщение
Quote (Сергей)
Демка и файл бд


Не знаю, но чего-то у меня все время Error:



Чего только не подставлял в ширину и высоту, да и в услуги.
:'(

Плагин hpwPlayAction не установлен, и пользовал расчет скриптом.

Автор - Peter
Дата добавления - 30 Июля 2012 в 00:04
mishemДата: Пн, 30 Июля 2012, 09:48 | Сообщение # 22
Эксперт форума
С hpwPlayAction работает, вернее цифры показывает. А работает или нет еще не разобрался.

Не вижу этого.
Quote (Сергей)
так все работает, но если так:
Math "[max.usluga.raschet]" "2" "[result]"
то нет

Но это ладно, чуть позже разберусь. Вроде нашел.
Зачем вот это?
Delay "100"
У тебя смотрю уже как в привычку вошло. Нет смысла использовать здесь эту команду.

Со SQL я не дружу. :(



Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.
 
СообщениеС hpwPlayAction работает, вернее цифры показывает. А работает или нет еще не разобрался.

Не вижу этого.
Quote (Сергей)
так все работает, но если так:
Math "[max.usluga.raschet]" "2" "[result]"
то нет

Но это ладно, чуть позже разберусь. Вроде нашел.
Зачем вот это?
Delay "100"
У тебя смотрю уже как в привычку вошло. Нет смысла использовать здесь эту команду.

Со SQL я не дружу. :(


Автор - mishem
Дата добавления - 30 Июля 2012 в 09:48
СергейДата: Пн, 30 Июля 2012, 13:07 | Сообщение # 23
Необукер
Quote (mishem)
Не вижу этого.
я упростил бд, т.к. в оригинале много таблиц, что еще больше запутает. Потому сделал с 2я основными, поэтому имена ячеек другие
В место raschet, новое имя actN (где N выбираемый номер)
Вот и получается:

Добавлено (30 Июля 2012, 13:07)
---------------------------------------------

Quote (Peter)
пользовал расчет скриптом.
хмм, я в тестовом скрипт не запускал, проверю.


Сообщение отредактировано
Сергей - Пн, 30 Июля 2012, 13:04
 
Сообщение
Quote (mishem)
Не вижу этого.
я упростил бд, т.к. в оригинале много таблиц, что еще больше запутает. Потому сделал с 2я основными, поэтому имена ячеек другие
В место raschet, новое имя actN (где N выбираемый номер)
Вот и получается:

Добавлено (30 Июля 2012, 13:07)
---------------------------------------------

Quote (Peter)
пользовал расчет скриптом.
хмм, я в тестовом скрипт не запускал, проверю.

Автор - Сергей
Дата добавления - 30 Июля 2012 в 13:07
СергейДата: Пн, 30 Июля 2012, 13:44 | Сообщение # 24
Необукер
Quote (Peter)
Не знаю, но чего-то у меня все время Error:
поверил все робит.
заливаю тест с 3 вариантами.

Добавлено (30 Июля 2012, 13:32)
---------------------------------------------

Добавлено (30 Июля 2012, 13:44)
---------------------------------------------
Надо как то по другому организовать структуру бд
Оказывается, что применение формул могут зависеть от некоторых условий...
Получается, что теперь надо еще и продумать куда вставлять условия (If-Else-EndIf)
Мдя, вот я "подписался" с дуру, а на первый взгляд проект обещался быть простым :D

Прикрепления: 7272439.rar (27.4 Kb)
 
Сообщение
Quote (Peter)
Не знаю, но чего-то у меня все время Error:
поверил все робит.
заливаю тест с 3 вариантами.

Добавлено (30 Июля 2012, 13:32)
---------------------------------------------

Добавлено (30 Июля 2012, 13:44)
---------------------------------------------
Надо как то по другому организовать структуру бд
Оказывается, что применение формул могут зависеть от некоторых условий...
Получается, что теперь надо еще и продумать куда вставлять условия (If-Else-EndIf)
Мдя, вот я "подписался" с дуру, а на первый взгляд проект обещался быть простым :D


Автор - Сергей
Дата добавления - 30 Июля 2012 в 13:44
mishemДата: Пн, 30 Июля 2012, 16:31 | Сообщение # 25
Эксперт форума
Quote (Сергей)
И заметил, что чем больше размер БД, тем больше надо ставить паузу.

%) Надо иметь ввиду.
Quote (Сергей)
идея это хорошо, подожду

Дней 5 придется ждать. :(
Мож по пьяне что выдумаю. :)
Quote (Сергей)
проект обещался быть простым

проект простой.
Я те говорю, не в том направлении прост идешь.
Зачем мускул? И так все просто. Каждой переменной присвоить свое значение.... %) Че сказал, сам не поняол, но направление правильное. :D


Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.
 
Сообщение
Quote (Сергей)
И заметил, что чем больше размер БД, тем больше надо ставить паузу.

%) Надо иметь ввиду.
Quote (Сергей)
идея это хорошо, подожду

Дней 5 придется ждать. :(
Мож по пьяне что выдумаю. :)
Quote (Сергей)
проект обещался быть простым

проект простой.
Я те говорю, не в том направлении прост идешь.
Зачем мускул? И так все просто. Каждой переменной присвоить свое значение.... %) Че сказал, сам не поняол, но направление правильное. :D

Автор - mishem
Дата добавления - 30 Июля 2012 в 16:31
СергейДата: Пн, 30 Июля 2012, 19:25 | Сообщение # 26
Необукер
Quote (mishem)
Зачем мускул?
да где ты увидел мусол то, обычный файловый ассес.
Без бд ни как, там еще база клиентов.
Quote (mishem)
Каждой переменной присвоить свое значение
зашивать не надо, т.к. значения будут меняться, если динамика значит надо хде то хранить, так что без бд никак.
Думаю, может в место формул хранить кусок кода примерно так
 
Сообщение
Quote (mishem)
Зачем мускул?
да где ты увидел мусол то, обычный файловый ассес.
Без бд ни как, там еще база клиентов.
Quote (mishem)
Каждой переменной присвоить свое значение
зашивать не надо, т.к. значения будут меняться, если динамика значит надо хде то хранить, так что без бд никак.
Думаю, может в место формул хранить кусок кода примерно так

Автор - Сергей
Дата добавления - 30 Июля 2012 в 19:25
mishemДата: Пн, 30 Июля 2012, 21:14 | Сообщение # 27
Эксперт форума
Quote (Сергей)
да где ты увидел мусол то

dbpExecSQL "max" "SELECT act[type_usluga],id,kof[type_usluga] FROM usluga WHERE id = [name_usluga]" ""
и т.д.

Я нажрался, ну это как обычно, мне кажется что ты и сам можешь догадаться....
Не, мне кажется сейчас ступлю. Давай подождем пару тройку дней, ;)
Мне кажется, все таки 80 условий надо вешать. 80=90


Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.
 
Сообщение
Quote (Сергей)
да где ты увидел мусол то

dbpExecSQL "max" "SELECT act[type_usluga],id,kof[type_usluga] FROM usluga WHERE id = [name_usluga]" ""
и т.д.

Я нажрался, ну это как обычно, мне кажется что ты и сам можешь догадаться....
Не, мне кажется сейчас ступлю. Давай подождем пару тройку дней, ;)
Мне кажется, все таки 80 условий надо вешать. 80=90

Автор - mishem
Дата добавления - 30 Июля 2012 в 21:14
СергейДата: Пн, 30 Июля 2012, 22:23 | Сообщение # 28
Необукер


Сообщение отредактировано
Сергей - Пн, 30 Июля 2012, 22:26
 
Сообщение

Автор - Сергей
Дата добавления - 30 Июля 2012 в 22:23
mishemДата: Пн, 30 Июля 2012, 22:57 | Сообщение # 29
Эксперт форума
Quote (Сергей)
ы случаем не переводил плагин hpwPlayAction?

переводил, но наверно не до конца. Раз не выложил.
Там что то замудренное было по моему. Не один, а штуки 3 надо было , не помню
Ща дам. если есть перевод

Добавлено (30 Июля 2012, 22:57)
---------------------------------------------
Ну вот, точно. У hpwPlayAction две команды. Остальное, идет обращение к другим. Я пробовал разобраться, не смог, :( Если разберешься, давай хелп. Плаг заслуживает внимание. ;)


Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.
 
Сообщение
Quote (Сергей)
ы случаем не переводил плагин hpwPlayAction?

переводил, но наверно не до конца. Раз не выложил.
Там что то замудренное было по моему. Не один, а штуки 3 надо было , не помню
Ща дам. если есть перевод

Добавлено (30 Июля 2012, 22:57)
---------------------------------------------
Ну вот, точно. У hpwPlayAction две команды. Остальное, идет обращение к другим. Я пробовал разобраться, не смог, :( Если разберешься, давай хелп. Плаг заслуживает внимание. ;)


Автор - mishem
Дата добавления - 30 Июля 2012 в 22:57
mishemДата: Ср, 01 Августа 2012, 19:03 | Сообщение # 30
Эксперт форума
Quote (Сергей)
в объект TextEntry и задать ей переменную "action"


TextEntry не понимает переменных, там все это читается как текст. И когда присваиваетя значение из TextEntry, то записываются названия переменных а не их значение.
А вот объект Text как раз понимает все переменные как значение.
Можно без команды Math сделать примерно так.
Code
SetVar "[space]" "4"
SetVar "[width]" "2"
SetVar "[height]" "2"
SetVar "[max.material.banr2]" "200"
SetVar "[max.material.luver]" "140"
SetVar "[max.usluga.raschet]" "[space]*[max.material.banr2]+2*([width]+[height])*[max.material.luver]"


Думаю ты уже разобрался. Но все же.
Прикрепления: hpwPlayAction_R.zip (380.2 Kb)


Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.
 
Сообщение
Quote (Сергей)
в объект TextEntry и задать ей переменную "action"


TextEntry не понимает переменных, там все это читается как текст. И когда присваиваетя значение из TextEntry, то записываются названия переменных а не их значение.
А вот объект Text как раз понимает все переменные как значение.
Можно без команды Math сделать примерно так.
Code
SetVar "[space]" "4"
SetVar "[width]" "2"
SetVar "[height]" "2"
SetVar "[max.material.banr2]" "200"
SetVar "[max.material.luver]" "140"
SetVar "[max.usluga.raschet]" "[space]*[max.material.banr2]+2*([width]+[height])*[max.material.luver]"


Думаю ты уже разобрался. Но все же.

Автор - mishem
Дата добавления - 01 Августа 2012 в 19:03
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Поиск: