Имя: Пароль:
1C
1С v8
v8: Обработка значения в реквизите справочника
0 moshefoo
 
19.06.12
14:21
Проблема , делаю обработку значения вводимого в справочнике реквизита ФИО  . нужно .чтобы при вводе числового значения ругалось типа вы вели  число .а не строку .  программа 8.2 видит только на ТипЗнч(ФИО) = Тип("Строка")  

ТипЗнч(ФИО) = Тип("Число не видит ")   в чем косяк не пойму выручайте )
1 Cube
 
19.06.12
14:23
ТипЗнч(ФИО) = Тип("Число не видит ")
))))))))))) Красавчик!!!)
2 palpetrovich
 
19.06.12
14:23
Петр0в - строка ?
3 moshefoo
 
19.06.12
14:26
строка
4 Fragster
 
гуру
19.06.12
14:27
а " 12345" строка?
5 Cube
 
19.06.12
14:28
(3) У тебя ФИО - это в любом случае строка, хоть цифры туда забей, хоть буквы... Продолжать?
6 moshefoo
 
19.06.12
14:29
да жесткая строка . так вот нужно чтобы ругалось если ввоожу туда число
7 palpetrovich
 
19.06.12
14:29
(6) не занимайся ерундой
8 Fragster
 
гуру
19.06.12
14:30
(7) может у него лабораторная работа
9 moshefoo
 
19.06.12
14:33
лабу пишу .если кто знает подскажите
10 mikecool
 
19.06.12
14:35
(9) регэксп тебе в руки
11 moshefoo
 
19.06.12
14:35
12345 если в кавычках то строка будет
12 moshefoo
 
19.06.12
14:37
по русски можно  mikecool
13 Бледно Золотистый
 
19.06.12
14:38
14 Шапокляк
 
19.06.12
14:39
Попытка
КакоеТоЧисло=Число(ТвояСтрока);
Предупреждение("Не фиг сюда числа вводить!");
ТвояСтрока="";
Исключение
КонецПопытки;
15 Kreont
 
19.06.12
14:39
ФИОЧисло = Ложь;
Попытка
А = ФИО*1;
ФИОЧисло = Истина;
Исключение
КонецПопытки;
16 Fragster
 
гуру
19.06.12
14:41
надо почитать конспект лекций. я думаю, что препод имеет ввиду посимвольный обход строки + проверку на наличие числовых символов...
17 moshefoo
 
19.06.12
14:41
Шапокляк  попытка в цикле вводитсья
18 Kreont
 
19.06.12
14:42
(16) + 100, для лабы скорее так и надо, а не обходить как (14)(15) :)))
19 moshefoo
 
19.06.12
14:43
ввод обрабатываемых значений в модуле справочника  


делаю проверку на принадлежность  к типу число  реквезитса строкового параметра ФИО  куда ручками забиваю фамилии.
20 Kreont
 
19.06.12
14:47
(17)в каком цикле?
21 moshefoo
 
19.06.12
14:51
решил всем спос
22 moshefoo
 
19.06.12
14:52
Попытка
КакоеТоЧисло=Число(ТвояСтрока);
Предупреждение("Не фиг сюда числа вводить!");
ТвояСтрока="";
Исключение
КонецПопытки;

решил этим
23 Fragster
 
гуру
19.06.12
14:53
(22) препод не пирмет
24 Kreont
 
19.06.12
14:53
Хот текст "Не фиг сюда числа вводить!" преподу измени :)
25 moshefoo
 
19.06.12
14:54
не пирмет. не буду изменять один хер не мне лаба)
26 palpetrovich
 
19.06.12
14:56
(22) для "Петр0в" не прокатит :)
27 moshefoo
 
19.06.12
14:57
там эже нул  конечно не прокатит
28 Fragster
 
гуру
19.06.12
15:00
(25) а, так ты делаешь так, чтобы тебя потом еще раз не просили?
29 palpetrovich
 
19.06.12
15:00
для лабы так делай :)
Для Инд=0 по 9 Цикл
   Если Найти(ФИО, ""+Инд) > 0 Тогда
       Сообщить("Не фиг сюда числа вводить!");
       ФИО = "";
       Прервать;
   КонецЕсли;
КонецЦикла;
30 moshefoo
 
19.06.12
15:01
ну а почему по 9 )
31 Aprobator
 
19.06.12
15:03
неделя пятничная - однозначно. Перлы со вчерашнего дня уже сыпятся.
32 palpetrovich
 
19.06.12
15:03
(30) ну, тебе можно до 999 :)
33 Kreont
 
19.06.12
15:04
Если КодСимвола(Сред(ФИО,ы,1)) > 47 и КодСимвола(Сред(ФИО,ы,1)) <=57 Тогда

ы - цикл перебора строки посимвольно :)
34 Kreont
 
19.06.12
15:05
(30) :) Число в 10-ной системе надо определять? или в другой..
35 moshefoo
 
19.06.12
15:07
ну все погнали чудить)  ну всеравно спасибо. Попытка
КакоеТоЧисло=Число(ТвояСтрока);
Предупреждение("Не фиг сюда числа вводить!");
ТвояСтрока="";
Исключение
КонецПопытки;
36 palpetrovich
 
19.06.12
15:10
(33) ты это, не воняй человека в ступор ..."цикл перебора строки посимвольно" :))
37 palpetrovich
 
19.06.12
15:10
*вГоняй
38 Reset
 
19.06.12
15:15
Может, такой овнокод нужен:

Для Цифра=0 по 9 цикл
 Если Найти(ФИО,Цифра) тогда
   ЕстьЦифра=Истина; Прервать;
 КонецЕсли;
КонецЦикла;

Если ЕстьЦифра тогда
 Предупреждение("Не фиг сюда числа вводить!");
 // другие карательные действия
КонецЕсли;
39 palpetrovich
 
19.06.12
15:28
(38) гы  см. (29) :)
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.