Страница 1 из 2
					
				Очистка use - поля combo бокса
				Добавлено: 03 Август 2006, 7:54
				 SSTA
				Здравствуйте.
cw 6.1. ABC
Имею рядовой combo box. 
Файл:
Fil:Cod
Fil:Name
Use переменная - поле файла Fil:Name (string). После выбора/добавления проделываю с записью её обработку по нажатию кнопки. После этого в окне устанавливается первая запись файла. А нужно бы чиcтую строку. Не помогает ничего, ни erase, ни попытка установить или выбрать несуществующую запись, ни привязка в action к пустым полям. 
Как увернуться?
			 
			
					
				
				Добавлено: 03 Август 2006, 9:16
				 Admin
				а пробовал перед обработкой записи сделать
а после этого
 
			 
			
					
				
				Добавлено: 03 Август 2006, 9:22
				 Леонид
				Используй в качесве USE-переменной локальную переменную, типа LOC:Name и очищай ее
			 
			
					
				
				Добавлено: 03 Август 2006, 9:23
				 ru_alex
				попробуй
ERASE(?Fil:Name)
FDCB1.ResetQueue
если используешь локальные переменные, в которые попадают значения из файла, наверное, их тоже нужно очистить.
			 
			
					
				
				Добавлено: 03 Август 2006, 9:32
				 ru_alex
				Леонид писал(а):Используй в качесве USE-переменной локальную переменную, типа LOC:Name и очищай ее
Неа, так не пойдет.
Там в классе при обработке event:accepted есть код:
 
SELF.UseField = SELF.EntryField{PROP:ScreenText}
которые перекрывает очистку переменной
 
			 
			
					
				
				Добавлено: 03 Август 2006, 12:44
				 Дед Пахом
				а ?combo{prop:text}='' не поможет? Сам проверить в данный момент не могу, но помню, что-то похожее очень простое работало.
			 
			
					
				
				Добавлено: 03 Август 2006, 12:53
				 ru_alex
				Дед Пахом писал(а):а ?combo{prop:text}='' не поможет? Сам проверить в данный момент не могу, но помню, что-то похожее очень простое работало.
ну, батенька 
из c60help:
COMBO  Places a data entry field with an associated list of data items on the WINDOW or TOOLBAR.
picture    A display picture token that specifies the input format for the data entered into the control (PROP:Text).
 
			 
			
					
				
				Добавлено: 03 Август 2006, 20:42
				 Дед Пахом
				ну не prop:text, а prop:screentext
Код: Выделить всё
  program
  map
  end
Q     QUEUE
S       STRING(20)
      END
Window WINDOW('Caption'),AT(,,260,100),FONT('MS Sans Serif',8,,FONT:regular,CHARSET:CYRILLIC),SYSTEM, |
         GRAY
       COMBO(@s20),AT(20,16,163,15),USE(?Combo1),DROP(5),FROM(Q)
       BUTTON('Очистить'),AT(19,46,45,14),USE(?Button1)
     END
  code
  Q.S='AAAAAAAAAAAAAAAAA'
  ADD(Q)
  Q.S='BBBBBBBBBBBBBBBBB'
  ADD(Q)
  Q.S='CCCCCCCCCCCCCCCCC'
  ADD(Q)
  open(window)
  accept
    case event()
    of event:accepted
      case field()
      of ?Button1
        ?Combo1{prop:screentext}=''
        display
      end
    end
  end
  close(window)
очищается...
PS для админа:
если копировать сюда из IDE клариона, то русские буквы превращаются в элегантные шорты, в смысле в кракозябры.
 
			 
			
					
				
				Добавлено: 04 Август 2006, 0:13
				 Admin
				А я тут каким боком? Это вроблема Clarion`а
Т.к. из других продуктов все вставляется на ура. Например из Дельфи 

 
			 
			
					
				
				Добавлено: 04 Август 2006, 0:29
				 Дед Пахом
				ну и кривой у вас сайт тогда.
			 
			
					
				
				Добавлено: 04 Август 2006, 9:32
				 Admin
				Вот для теста из Клариного редактора эмбедов вставил данный код. 
Как видим все прекрасно, так что не нужно на сайт все валить ...
!-------------------------------------------------------------
IF Select.Set(Script)
   MAVSHOWERROR('Ошибка инициализации запроса')
   RETURN
 END
 LOOP
   CASE Select.Fetch()
   OF NoError
   OF NoRecErr
     BREAK
   ELSE
     MAVSHOWERROR('Ошибка извлечения записи')
     BREAK
   END
   LOOP I = 1 TO RECORDS(Select.QCol)
     GET(Select.QCol,I)
     CASE Select.QCol.ColType
     OF SQL_C_TYPE_TIMESTAMP
       !MAVCOPY(DTInfo,Select.QCol.Value,SIZE(DTInfo))
     ELSE
       MESSAGE('Результат: ' & Select.QCol.Value,'ExecuteScript')
     END
   END
 END
 Select.Kill
			 
			
					
				
				Добавлено: 04 Август 2006, 9:36
				 Admin
				Мы тут с Андреем подумали что может быть это зависит как то от версии Клариона. На Clarion 6.3 все как видишь нормально ...
			 
			
					
				
				Добавлено: 04 Август 2006, 9:39
				 Admin
				На C5.5 тоже все Ok
!----------------------------
xAccess.Log('*** Не установлен каталог для отправки данных!', xLog:Low, 'RouteFileIfNeed')
    xWarning('Не установлен каталог для отправки данных!')
  END
  LOC:FileName     = xExtractFile(FileForCheck)              ! получаем имя файла
  LOC:FileFromID   = LOC:FileName[1:2]                       ! от кого файл
  LOC:FileFromType = LOC:FileName[3]                         ! от какого типа программы
  LOC:FileExt      = UPPER(xExtractExt(LOC:FileName))        ! получем расширение программы
			 
			
					
				
				Добавлено: 04 Август 2006, 9:46
				 Дед Пахом
				Жень, не принимай близко к сердцу, я не наезжал, забыл смайлик добавить  
  
  
 
Но честно, в IDE нажал Ctrl-A Ctrl-C, сюда Ctrl-V, текст на кнопке превратился в мусор. Правда, у меня Opera 8.5, может она глючит.
 
			 
			
					
				
				Добавлено: 07 Август 2006, 4:03
				 ShilakAV
				Но честно, в IDE нажал Ctrl-A Ctrl-C, сюда Ctrl-V, текст на кнопке превратился в мусор. Правда, у меня Opera 8.5, может она глючит.
Такая же беда. Opera 9.0