View previous topic :: View next topic |
Author |
Message |
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 11 Oct 2005 11:17 Post subject: Обсуждение написание модуля на харборе УРОК5 |
|
|
Задачей данной темы является научиться в режиме
ввода/корректировки использовать перебор данных из
существующего массива посредством клавиши "пробел" |
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 11 Oct 2005 11:52 Post subject: |
|
|
В нашем примере при вводе/корректировке третьим параметром стоит наименование услуг.
Давайте на примере предположим что у нас есть всего 3 услуги и мы будем выбирать их из массива
- Услуги системного инженера
- Услуги по программированию
- Услуги консультанта
- Услуги по терминальной связи
Создадим массив
Code: | aType:={{'1','Услуги системного инженера'}, ;
{'2','Услуги по программированию'},;
{'3','Услуги консультанта '}, ;
{'4','Услуги по терминальной св.'}} |
|
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 11 Oct 2005 12:02 Post subject: |
|
|
Теперь исправим наш массив справочника
Code: | aRef:={,,{|x|RotateAndReader(x,m->aType)},,,,"partners"} |
С учетом того что у нас не совсем стандартный справочник нам нужно задействовать еще 18 элемент функции InitList
Code: | aGetBlock:={,,{|x|RotateBlock(x,m->aType,"aIn[3]")}} |
И соответственно подправить нашу итоговую строчку
Code: | work->(Initlist(nTop,nBot,cColHead,aBlockCols,cCurProc,;
_aHeads,aRef,aPic,aWhen,,;
nUniMode,bDel,,,,;
,,aGetBlock,,,;
,,cFindMacro,,, ;
,,,,aHotKey)) |
Вот так шаг за шагом получаем очень даже "навороченный" экран работы
ВНИМАНИЕ !!! Данное описание для демонстрации подключения клавиши пробел. Вопросы будут.... нашу задачку после такого вмешательства предстоит улучшать |
|
Back to top |
|
|
Марина
Joined: 27 Aug 2002 Posts: 501 Location: Кондрина Марина Александровна Occupation: ОАО БКО программист Interests: Боровичи Новгородской обл
|
Posted: 11 Oct 2005 14:05 Post subject: |
|
|
Поясните, пожалуйста, кто такой m->, почему именно m
Я попробовала убрать этот m->. Тогда перебор вариантов услуг получается, но на экран выводится и в файл записывается номер варианта напимер '2' вместо значения.
В случае редактирования не новой записи на ввод подается первый вариант из aType, а не тот, который уже имеется в этой записи. |
|
Back to top |
|
|
Светлана
Joined: 22 Jul 2002 Posts: 416 Location: Эпштейн Светлана
Interests: Бердск, Новосибирская обл
|
Posted: 12 Oct 2005 10:37 Post subject: |
|
|
А можно еще рассказать про 19,20 и 24 параметры InitList? Они управляют цветом данных. Хочется чтобы не только работало, но и было красиво... |
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 12 Oct 2005 11:50 Post subject: |
|
|
Марина wrote: | Поясните, пожалуйста, кто такой m->, почему именно m
Я попробовала убрать этот m->. Тогда перебор вариантов услуг получается, но на экран выводится и в файл записывается номер варианта напимер '2' вместо значения.
В случае редактирования не новой записи на ввод подается первый вариант из aType, а не тот, который уже имеется в этой записи. |
Я брал пример из рабочей программы - а там у меня внутри функции и желательно сказать было что в памяти есть массив вот и использовал m-> , в нашем примере это действительно совсем не нужно было... (но и мешать не должно) - что касается всего остального, то действительно так - я же писал что это показать как перебор сделать, вечером распишу как дальше улучшить все правиль |
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 12 Oct 2005 11:52 Post subject: |
|
|
Светлана wrote: | А можно еще рассказать про 19,20 и 24 параметры InitList? Они управляют цветом данных. Хочется чтобы не только работало, но и было красиво... |
Обязательно распишу...
Извините за медлительность - днем еще и другие вопросы нужно реша |
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 12 Oct 2005 22:13 Post subject: |
|
|
Марина wrote: | Поясните, пожалуйста, кто такой m->, почему именно m
Я попробовала убрать этот m->. Тогда перебор вариантов услуг получается, но на экран выводится и в файл записывается номер варианта напимер '2' вместо значения.
В случае редактирования не новой записи на ввод подается первый вариант из aType, а не тот, который уже имеется в этой записи. |
1. Для того чтобы все работало нам с Вами надо добавить поле в базу TYPE C 1 0 и дальше при выводе на экране можно тогда в массиве блоков кода вместе {{||FIELD->NAME},....}
написать {{|| IF(!EMPTY(FIELD->TYPE),aType[VAL(FIELD->TYPE),2],SPACE(25))}....}
Поле NAME в этом случае будет не нужно - если по нему не нужен фрагментный поиск
2. Для того чтобы подставляло нужное надо использовать параметр 26
Туда надо прописать
bPreGet:={|x,y,z|aIn[x]:=FIELD->VID} |
|
Back to top |
|
|
Светлана
Joined: 22 Jul 2002 Posts: 416 Location: Эпштейн Светлана
Interests: Бердск, Новосибирская обл
|
Posted: 18 Oct 2005 09:59 Post subject: |
|
|
Ау!!! А продолжение будет? Только вошли во вкус... |
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 18 Oct 2005 13:09 Post subject: |
|
|
Обязательно будет - простыть уже нельзя |
|
Back to top |
|
|
itman
Joined: 05 Apr 2002 Posts: 1247 Location: Ильин Е.Ю. Occupation: Cio Interests: Кинель
|
Posted: 20 Oct 2005 15:48 Post subject: |
|
|
Хотелось бы осветить вопрос отметки строк (ins / + / - )в initlist. |
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 20 Oct 2005 16:18 Post subject: |
|
|
План перенес как раз сегодня на вечер, так что скоро будет |
|
Back to top |
|
|
Светлана
Joined: 22 Jul 2002 Posts: 416 Location: Эпштейн Светлана
Interests: Бердск, Новосибирская обл
|
Posted: 20 Oct 2005 17:29 Post subject: |
|
|
И еще про цвет обещали... про 19,20 и 24 параметры InitList? |
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 20 Oct 2005 18:43 Post subject: |
|
|
Все помню |
|
Back to top |
|
|
|