|
|
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
Уважаемые коллеги! Если ДДДВ в основном предназначена для ВЫБОРКИ данных из таблиц, то какой бы метод вы порекомендовали, если нужно МАКСИМАЛЬНО БЫСТРО ввести данные в таблицу, которые затем выбираются в ДДДДВ. Вернее последовательность такова - заполняется лист заказа по телефону, при выборке из ДДДВ оказывается что данных там нет - их нужно ввести - но ОЧЕНЬ быстро и не выходя из первичного листа, куда данные заносятся телефонным оператором. Не хотелось бы открывать др.окна, табы, чтобы не сбить оператора. Заранее благодарен! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2006, 17:18 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
dw_control.Object.columnname.dddw.AllowEdit = "yes" + серверная логика для внесения новых записей в справочник. Если нет полезной привычки вносить все изменения только через хранимые процедуры, то можно попробовать воспользоваться триггером. PS: IMHO, вносить данные в справочник на ходу - очень плохая практика. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2006, 17:31 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
PL99dw_control.Object.columnname.dddw.AllowEdit = "yes" + . PS: IMHO, вносить данные в справочник на ходу - очень плохая практика. AllowEdit позволяет редактировать только display поле - остальные - никак. Практика плохая - но позволяет не терять скорости по вводу заказов. Потом можно и подредактировать. Ничто так не раздражает людей как тормоза по ту сторону телефонной линии. Мое решение было таково - для всех полей выбора из справочника в ДДДВ иметь дубли но текстовые на одном и том же окне и при их заполнении и сохранении справочники модифицируются/дополняются. Но может кто предложит более изящное решение так как задача весьма общая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2006, 17:49 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
обычно при быстром вводе применяются какие нибудь кода (код артикля например). алгоритм примерно такой: - набирается код - если такой существует в справочнике - заполняются все остальные поля - если нет - открывается окно справочника для выбора или создания новой записи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2006, 15:16 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
Dmitry.обычно при быстром вводе применяются какие нибудь кода (код артикля например). алгоритм примерно такой: - набирается код - если такой существует в справочнике - заполняются все остальные поля - если нет - открывается окно справочника для выбора или создания новой записи спасибо - так и будем делать -одно не хорошо - еще одно окно открывать. Я постоянно с этим борюсь. стараюсь оставаться в ТАБах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2006, 18:44 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
sboyko спасибо - так и будем делать -одно не хорошо - еще одно окно открывать. Я постоянно с этим борюсь. стараюсь оставаться в ТАБах. Тоже спорный вопрос, открывать постоянно дополнительные страницы в TAB если они используются редко. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2006, 10:41 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
Строка поиска отображается или нет? Если да, то рядом с ней повесить кнопку "Добавить". Если делать качественно, то при вводе информации в справочник надо проверять наличие нечётких дублей без учёта стоп-слов "ООО", "ЗАО" и т.п. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2006, 12:43 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
авторСтрока поиска отображается или нет? Если да, то рядом с ней повесить кнопку "Добавить". Если делать качественно, то при вводе информации в справочник надо проверять наличие нечётких дублей без учёта стоп-слов "ООО", "ЗАО" и т.п. Качественно - это с использованием например метрики Левенштейна. Только при большом справочнике не здорово получится... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2006, 15:10 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
мое общее решение такое: - оператор вводит данные о клиенте в текстовое поле с DDDW, либо без (на скриншоте есть поле Покупатель с DDDW и поле Телефон без DDDW по которому тоже ведется поиск в БД ) - при нажатии на клавишу Enter осуществляется поиск в Базе или в справочнике на существование такого клиента или телефона, если найден, запоняются остальные поля в форме заказа (Адрес, контакт, и т.д.) - если клиент не найден, оператор сам вводит остальную инфу о клиенте тут же в форме заказа и при сохранении заказа добавляется новый клиент в базу (либо при помощи datastore на клиенте либо на сервере в ХП) - периодически конечно возникают клиенты-дубликаты, для их объединения есть спец. процедура. считаю правильным не выводить никаких доп. окон для ввода данных о клиенте, все в одной общей форме (операторы потом скажут спасибо) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2006, 19:40 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
rcryoмое общее решение такое: - оператор вводит данные о клиенте в текстовое поле с DDDW...А сколько у вас покупателей? :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2006, 19:50 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
ФилиппА сколько у вас покупателей? :-) Вообще то с этого вопроса надо было начинать ;) Если меньше 100 то такой подход возможен, надо только поиск по введенным символам в DDDW организовать, а иначе без открытия нового окна с полями для фильтрации, кнопкой "Искать" и списком не обойтись. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.02.2006, 10:38 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
если записей (покупателей) много, не обязательно это DDDW заполнять заранее, можно только после ввода оператором значения для поиска, отправлять запрос в базу, если найдено одно значение оно и подставляется, если несколько, заполняется dddw, которое и выпадает поля для фильтрации в моем случае это и есть поля Покупатель и телефон, которые и так есть в форме заказа, зачем еще одно окно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.02.2006, 18:07 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
rcryoесли записей (покупателей) много, не обязательно это DDDW заполнять заранее, можно только после ввода оператором значения для поиска, отправлять запрос в базу, если найдено одно значение оно и подставляется, если несколько, заполняется dddw, которое и выпадает Ага, а сколько у вас покупателей по фамилии Иванов или Сидоров? Или ежели поиск надо по неполному заполнению вести, типа Ива... или Сидо... Скольку их у вас там "если несколько, заполняется dddw, которое и выпадет"? На ЛИЧНО мой взгляд, как "общее решение" это не годится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.02.2006, 19:20 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
Спасибо всем кто принял участие в топике. Задача к сожалению многоплановая. ЕЕ наихудший вариант - поиск по номеру телефона, уже звонившего хоть раз клиента, кол-во которых не ограничено(ограничено числом жителей города). Остальные варианты - более регулярные. Но метрики Левенштейна я совсем не знаю-может там собака зарыта!!:-) Еще вопрос - для тех кто знает- если в modify(create....) то как потом этот объект найти и стереть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2006, 11:24 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
sboykoНо метрики Левенштейна я совсем не знаю-может там собака зарыта!!:-) А это на сколько одно слово похоже на другое - т.е. сколько нужно сделать операций чтобы из одного слова получить другое. Например Левинштейн - изменить одну букву, Левнештейн - поменять местами 2 буквы Левништейн - заменить 2 буквы/поменять местами буквы и заменить одну. В интернете можно найти описание вместе с исходниками (но наверное не на PowerScript'е :) ). А еще вроде люди ухитряются индексы к этому делу приладить... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2006, 11:48 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
Вот, для интересующихся: ru.wikipedia.org/wiki/ Дистанция_Левенштейна ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2006, 12:00 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
2Локшин МаркВот, для интересующихся: ru.wikipedia.org/wiki/ Дистанция_Левенштейна спасибо за объяснение! Еще вопрос -- если в modify(create....) то как потом этот объект найти и стереть, выделить границы и т.д. и т.п.?(с ма-а-а-а леньким примерчиком) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2006, 12:40 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
sboykoЕще вопрос -- если в modify(create....) то как потом этот объект найти и стереть, выделить границы и т.д. и т.п.?(с ма-а-а-а леньким примерчиком) Вопрос не понятен. Что имеется ввиду под "стереть"? Уничтожить - Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2006, 13:52 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
2Локшин Марк sboykoЕще вопрос -- если в modify(create....) то как потом этот объект найти и стереть, выделить границы и т.д. и т.п.?(с ма-а-а-а леньким примерчиком) Вопрос не понятен. Что имеется ввиду под "стереть"? Уничтожить - Код: plaintext Хотелось бы этот объект выделять, таскать по окну, менять размеры, наконец удалять. Про drag&drop ясно, а как выделить, изменить размеры... совсем непонятно-при помощи мыши а не программно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2006, 14:57 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
sboykoХотелось бы этот объект выделять, таскать по окну, менять размеры, наконец удалять. Про drag&drop ясно, а как выделить, изменить размеры... совсем непонятно-при помощи мыши а не программно. Погодите, а не здесь ли я про это рассказывал? http://www.sql.ru/forum/actualthread.aspx?tid=254082 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2006, 21:54 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
Локшин Марк sboykoХотелось бы этот объект выделять, таскать по окну, менять размеры, наконец удалять. Про drag&drop ясно, а как выделить, изменить размеры... совсем непонятно-при помощи мыши а не программно. Погодите, а не здесь ли я про это рассказывал? http://www.sql.ru/forum/actualthread.aspx?tid=254082 Так я ж ничего не понял! :-) И я в этом не виноват! Чуть чуть попонятнее :-( Заранее спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2006, 10:23 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
sboykoТак я ж ничего не понял! :-) И я в этом не виноват! Чуть чуть попонятнее :-( Заранее спасибо! Ну чего там понимать? Там только чуть-чуть кода написать осталось! Вот набросал кое-что в качестве примера... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2006, 21:10 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
Вот исправленная версия, сравнение вместо сравнений flag = 16 и flag = 17 flag = 0 и flag = 1 соответственно. Это я с mouse_event так поиграсля :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2006, 23:48 |
|
||
|
ввод в ДДДВ
|
|||
|---|---|---|---|
|
#18+
Локшин Марк sboykoТак я ж ничего не понял! :-) Ну чего там понимать? Там только чуть-чуть кода написать осталось! Вот набросал кое-что в качестве примера... когда то у меня были те же проблемы с Анзатцем Бете - вычислением интегралов квантовой теории поля на решетке Бете. И тогда тот же ответ - Ну чего там понимать поверг меня в уныние- но сейчас то я понимаю что не знать Анзатцы Бете/инстантоны квантовой теории/монополи дирака... вовсе не стыдно! :-). Просто этим не занимался! А за пример - огромное спасибо - правда еще не смотрел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2006, 15:12 |
|
||
|
|

start [/forum/topic.php?fid=15&fpage=75&tid=1337914]: |
0ms |
get settings: |
8ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
72ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
32ms |
get tp. blocked users: |
1ms |
| others: | 234ms |
| total: | 366ms |

| 0 / 0 |
