Дениска wrote: | ||
В чем выражается "не работает"? Сообщение не выдается или не компилируется или ...? |
Code: |
function main() Local p_vid,p_typ,p_post Local aRef,bScrInit_v,bScrInit_t Local aSet,aSetKey altd() aSet:=SaveSet() aSetKey:=SaveSetKey() //это временно - чтобы точно иметь правильные индексы NetUseExc('PART_T',"part_t.dbf") INDEX ON UPPER(CODE) TAG PART_T TO ("part_t.cdx") PART_T->(dbclosearea()) NetUseExc('PART_V',"part_v.dbf") INDEX ON UPPER(CODE+TYPE) TAG PART_V TO ("part_v.cdx") PART_V->(dbclosearea()) //временному конец NETUSE("PART_T","part_t.dbf",,.F.) //справочник типов партнеров NETUSE("PART_V","part_v.dbf",,.F.) //справочник видов партнеров PART_T->(OrdSetFocus("PART_T")) PART_V->(OrdSetFocus("PART_V")) //определим bScrInit 1 bScrInit_t :={|x| dispoutat( 11,45,left(Field->NAME,25),'N/BG') } //определим справочник типов part_t->( MAKEREFER("s_t","Тип партнера",2,{" Код "," Тип "},; //1-4 {3,5,16}, "n/w,w+/n",{"CODE"},{"aIn[1]"},'UPPER(aIn[1])',; //5-9 {{||FIELD->CODE},{||FIELD->NAME}},; //10 ,,,,,,,,,,,,,,,, ; //11-26 'cFind$UPPER(NAME)',,bScrInit_t)) //27-29 //определим bScrInit 2 bScrInit_v :={|y| dispoutat( 12,45,left(Field->NAME,25),'N/BG') } //определим справочник видов part_v->( MAKEREFER("s_v","Вид партнера",2,{" Код ","Населенный пункт "},{3,5,16},; //1-5 "n/w,w+/n",{"TYPE"},{"aIn[2]"},'UPPER(aIn[1]+aIn[2])',; //6-9 {{||FIELD->TYPE},{||FIELD->NAME}},; //10 ,,,,,,{||part_v->( SETSCOPE('UPPER(CODE)',UPPER(aIn[1])) )},; //11-17 {||part_v->( SETSCOPE() )},, ; //18-19 ,,,,,,,'cFind$UPPER(NAME)',,bScrInit_v)) //20-29 if NoOrYes("Изменять информацию о партнере",2,{" Да "," Нет "})=1 PARTNER->( QINPUT(10,15,14,70, ; {{"Введите тип партнера:","P_TYP"}, ; {"Введите вид партнера:","P_VID"}, ; {"Введите E-Mail......:","P_POST"} ; }, ; 1,{"s_t","s_v"},{,,REPLICATE("X",30)}, ; ,,,,,, ; 'RESTOFF') ) endif part_t->( DBCLOSEAREA() ) part_v->( DBCLOSEAREA() ) RestSetKey(aSetKey) RestSet(aSet) return nil |
nordk wrote: |
Нуу какие молодцы
Объявим для начала некую переменную допустим tname До QINPUT на основании поиска в базе заносим туда имя типа. |
nordk wrote: |
Дальше исправляем справочник так чтобы эта переменная заполнялась
значением имени. |
vla wrote: |
Вот про имя типа можно еще, как для прапорщиков (или даже как для генералов) |
Code: |
,{"CODE"},{"aIn[1]"}, |
Code: |
,{"CODE","NAME"},{"aIn[1]","tname"}, |
nordk wrote: |
Что-то притихли.
Не получается ? |
Code: |
,{"CODE","NAME"},{"aIn[1]","tname"}, |
Code: |
bScrInit_t :={|х| dispoutat( 11,45,left(field->name,25),'N/BG') } |
Code: |
function main()
Local p_vid,p_typ,p_post,tname:='' Local aRef,bScrInit_v,bScrInit_t,bTest Local aSet,aSetKey altd() aSet:=SaveSet() aSetKey:=SaveSetKey() //это временно - чтобы точно иметь правильные индексы NetUseExc('PART_T',"part_t.dbf") INDEX ON UPPER(CODE) TAG PART_T TO ("part_t.cdx") PART_T->(dbclosearea()) NetUseExc('PART_V',"part_v.dbf") INDEX ON UPPER(CODE+TYPE) TAG PART_V TO ("part_v.cdx") PART_V->(dbclosearea()) //временному конец NETUSE("PART_T","part_t.dbf",,.F.) //справочник типов партнеров NETUSE("PART_V","part_v.dbf",,.F.) //справочник видов партнеров PART_T->(OrdSetFocus("PART_T")) PART_V->(OrdSetFocus("PART_V")) //подтянем if part_t->(dbseek(partner->p_typ)) tname:=part_t->name endif //определим bScrInit 1 bScrInit_t :={|x|dispoutat( 11,45,left(field->name,25),'N/BG') } //определим справочник типов part_t->( MAKEREFER("s_t","Тип партнера",2,{" Код "," Тип "},; //1-4 {3,5,16}, "n/w,w+/n",{"CODE"},{"aIn[1]"},'UPPER(aIn[1])',; //5-9 {{||FIELD->CODE},{||FIELD->NAME}},; //10 ,,,,,,,; //11-17 ,,,,,,,,,,, ; //18-26 'cFind$UPPER(NAME)',,bScrInit_t,)) //27-29 //определим bScrInit 2 bScrInit_v :={|x| dispoutat( 12,45,left(Field->NAME,25),'N/BG') } //определим справочник видов part_v->( MAKEREFER("s_v","Вид партнера",2,{" Код ","Населенный пункт "},{3,5,16},; //1-5 "n/w,w+/n",{"TYPE"},{"aIn[2]"},'UPPER(aIn[1]+aIn[2])',; //6-9 {{||FIELD->TYPE},{||FIELD->NAME}},; //10 ,,,,,,{||part_v->( SETSCOPE('UPPER(CODE)',UPPER(aIn[1])) )},; //11-17 {||part_v->( SETSCOPE() )},, ; //18-19 ,,,,,,,'cFind$UPPER(NAME)',,bScrInit_v,)) //20-29 if NoOrYes("Изменять информацию о партнере",2,{" Да "," Нет "})=1 PARTNER->( QINPUT(10,15,14,70, ; {{"Введите тип партнера:","P_TYP"}, ; {"Введите вид партнера:","P_VID"}, ; {"Введите E-Mail......:","P_POST"} ; }, ; 1,{"s_t","s_v"},{,,REPLICATE("X",30)}, ; ,,,,,, ; 'RESTOFF') ) endif part_t->( DBCLOSEAREA() ) part_v->( DBCLOSEAREA() ) RestSetKey(aSetKey) RestSet(aSet) return nil |
Code: |
//определим справочник типов
part_t->( MAKEREFER("s_t","Тип партнера",2,{" Код "," Тип "},; //1-4 {3,5,16}, "n/w,w+/n",{"CODE","NAME"},{"aIn[1]","tname"},'UPPER(aIn[1])',; //5-9 {{||FIELD->CODE},{||FIELD->NAME}},; //10 |
Code: |
//определим справочник типов
part_t->( MAKEREFER("s_t","Тип партнера",2,{" Код "," Тип "},; //1-4 {3,5,16}, "n/w,w+/n",{"CODE"},{"aIn[1]"},'UPPER(aIn[1])',; //5-9 {{||FIELD->CODE},{||FIELD->NAME}},; //10 ,,,,,,,; //11-17 ,,,,,,,,,,, ; //18-26 'cFind$UPPER(NAME)',,bScrInit_t,)) //27-29 |
nordk wrote: |
Владимир сегодня к сожалению только вечером |
Code: |
if part_t->(dbseek(partner->p_typ))
tname:=part_t->name endif |
Code: |
if part_t->(dbseek(partner->p_typ))
tname:=part_t->name else tname:=SPACE(30) endif |
Code: |
bScrInit_t :={|x|dispoutat( 11,45,left(field->name,25),'N/BG') } |
Code: |
bScrInit_t :={||SayScreen(tname,11,45,'N/BG'),1 } |
Code: |
PARTNER->( QINPUT(10,15,14,70, ;
{{"Введите тип партнера:","P_TYP"}, ; {"Введите вид партнера:","P_VID"}, ; {"Введите E-Mail......:","P_POST"} ; }, ; 1,{"s_t","s_v"},{,,REPLICATE("X",30)}, ; ,,,bScrInit_t,,, ; 'RESTOFF') ) |
Code: |
bScrInit:={||SayAndWait(tname),1} |
Code: |
bScrInit:={||SayScreen(tname,11,45,'N/BG'),1} |
Code: |
bScrInit:={||dispoutat( 11,45,tname,'N/BG'),1} |
Code: |
function main()
Local aSet,aSetKey,bScrInit altd() Private tname,vname aSet:=SaveSet() aSetKey:=SaveSetKey() //это временно - чтобы точно иметь правильные индексы NetUseExc('PART_T',"part_t.dbf") INDEX ON UPPER(CODE) TAG PART_T TO ("part_t.cdx") PART_T->(dbclosearea()) NetUseExc('PART_V',"part_v.dbf") INDEX ON UPPER(CODE+TYPE) TAG PART_V TO ("part_v.cdx") PART_V->(dbclosearea()) //временному конец NETUSE("PART_T","part_t.dbf",,.F.) //справочник типов партнеров NETUSE("PART_V","part_v.dbf",,.F.) //справочник видов партнеров PART_T->(OrdSetFocus("PART_T")) PART_V->(OrdSetFocus("PART_V")) //подтянем текущие имена параметров if part_t->(dbseek(partner->p_typ)) tname:=part_t->name else tname:=space(30) endif if part_v->(dbseek(partner->p_vid)) vname:=part_v->name else vname:=space(30) endif //определим bScrInit 1 bScrInit:={||SayAndWait(tname),1} //bScrInit:={||SayScreen(tname,11,45,'N/BG'),1} //bScrInit:={||dispoutat( 11,45,tname,'N/BG'),1} //определим справочник типов part_t->( MAKEREFER("s_t","Тип партнера",2,{" Код "," Тип "},; //1-4 {3,5,16}, "n/w,w+/n",{"CODE"},{"aIn[1]"},'UPPER(aIn[1])',; //5-9 {{||FIELD->CODE},{||FIELD->NAME}},; //10 ,,,,,,,; //11-17 ,,,,,,,,, ; //18-26 'cFind$UPPER(NAME)',,)) //27-29 //определим справочник видов part_v->( MAKEREFER("s_v","Вид партнера",2,{" Код ","Населенный пункт "},{3,5,16},; //1-5 "n/w,w+/n",{"TYPE"},{"aIn[2]"},'UPPER(aIn[1]+aIn[2])',; //6-9 {{||FIELD->TYPE},{||FIELD->NAME}},; //10 ,,,,,,{||part_v->( SETSCOPE('UPPER(CODE)',UPPER(aIn[1])) )},; //11-17 {||part_v->( SETSCOPE() )},, ; //18-19 ,,,,,,,'cFind$UPPER(NAME)',,)) //20-29 if NoOrYes("Изменять информацию о партнере",2,{" Да "," Нет "})=1 PARTNER->( QINPUT(10,15,14,70, ; {{"Введите тип партнера:","P_TYP"}, ; {"Введите вид партнера:","P_VID"}, ; {"Введите E-Mail......:","P_POST"} ; }, ; 1,{"s_t","s_v"},{,,REPLICATE("X",30)}, ; ,,,bScrInit,,, ; 'RESTOFF') ) endif part_t->( DBCLOSEAREA() ) part_v->( DBCLOSEAREA() ) RestSetKey(aSetKey) RestSet(aSet) return nil |
output generated using printer-friendly topic mod. All times are GMT + 4 Hours