Тип переменной | |
---|---|
Centory Автор Сообщений: 88 Откуда: г. Зеленоград Дата регистрации: 20.08.2004 |
Как узнать сабж?
Да знаю, есть TYPE(), но интересуют подробности (как то длина, количество знаков после запятой и тд.) TYPE() для этого дела не подходит. |
Re: Тип переменной | |
---|---|
Петров Андрей Сообщений: 2506 Откуда: Химки (М.О.) Дата регистрации: 17.04.2002 |
Что то вроде того... А я использую не Type а VarType Отредактировано (16.02.05 17:52) ------------------ PS Недочитал тему до конца... |
Re: Тип переменной | |
---|---|
Centory Автор Сообщений: 88 Откуда: г. Зеленоград Дата регистрации: 20.08.2004 |
О vartype я не знал А зря, судя по всему она работает побыстрей чем type(). Но не суть важно, она дает только тип переменной, а надо больше. А хотелось бы подробней о переменной, как то например дает afields, но он только для таблиц... Если использовать чтото типа предложенного цикла - слишко замароченно будет. |
Re: Тип переменной | |
---|---|
JS Сообщений: 12264 Откуда: Эстония Дата регистрации: 04.09.2000 |
Вопрос - для какой цели?
------------------ Knowledge is better than ignorance! Website: juri.foxhelp.eu |
Re: Тип переменной | |
---|---|
Centory Автор Сообщений: 88 Откуда: г. Зеленоград Дата регистрации: 20.08.2004 |
Да нужно это под разбор отчетов, система старая..... Нам приходят листы в формате excel, а с нашей стороны они автоматом переделываются в dbf и там разбираются. А приходят они порой КРИВЫЕ (( и сохраняются автоматически тоже криво (то столбец даты в виде текста, то цифры пишутся как символы и тд).
Вот и думаю, как определить тип - можно конечно через дополнительную базу при сохранении и afields по ней, но хотца без этого.... |
Re: Тип переменной | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Hi, Centory!
Дело в том, что в фоксе информация о "размерности" переменной носит так сказать "неосновной" характер- например переменная может хранить значение 123.456, и в то-же время иметь внутренний признак "N(5,1)". Достать его из самого фокса проблематично - лучше наверное сделать fll - там это делается элементарно - т.к. все "атрибуты" переменной видны явно. P.S. Какое отношение "типоразмер" фоксовой переменной имеет к "кривому документу Excel" - для меня большая загадка - тебе надо с Excel разбираться а не с фоксом! Там определять (и возможно править как-то) типы и размеры полей. ------------------ WBR, Igor |
Re: Тип переменной | |
---|---|
Centory Автор Сообщений: 88 Откуда: г. Зеленоград Дата регистрации: 20.08.2004 |
А можно гденить глянуть пример с fll?
А по поводу екселя - вот для этого мне и нужно такой фокус провернуть, что не править его переодически..... |
Re: Тип переменной | |
---|---|
Петров Андрей Сообщений: 2506 Откуда: Химки (М.О.) Дата регистрации: 17.04.2002 |
2 Centory
У меня точно такая же задача. Те импорт данных из Excel таблиц. Присылают счета фактуры в каком угодно виде вместо цифр буквы и тд. Самую большую сложность вызывало найти положение начала номенклатуры на странице... Но это для большинства случаев решить удалось (пока). Но преобразование данных (тут Игорь не прав насчет при чем тут VFP) естествнно идет перед записью данных (у меня на MsSQL базу) Так вот. Импорт делаю следующим образом. Считаю номенклатуру и кидаю ее массивом в массив VFP. А дальше импортирую из него внутри VFP. Скорость реально больше... Теперь насчет типов переменных. Например в сч.фак. есть поле - количество. Его формат заранее не определен. Те возможны варианты 1) Число с неизвестным количеством знаков. (возможен тип Currency) 2) Строка (в котрой тоже хранится число) 3) Вообще может не быть (и такое бывает ) Определяю количество знаков через .cells(m.x,m.y).numberformat в пункте 1 иначе ставлю 3. Далее если имеем строку переводим ее в число используя Round(m.x,m.dec). Со столбцами в которых денежные суммы проще там всегда 2 знака... Если что могу привести свой код... ------------------ PS Недочитал тему до конца... |
Re: Тип переменной | |
---|---|
Centory Автор Сообщений: 88 Откуда: г. Зеленоград Дата регистрации: 20.08.2004 |
2 Петров Андрей:
Такаяже фигня. Благо кое какие столбцы так сказать не плавающие а фиксированные. А вообще 30% гемороя удалось снять через transform, она возвращает текстовую строку, какой бы примитив ей не сунули на вход..... А дальше evoalute, она переводит сивмольное представление числа в правильное цифровое..... Есть конечно неувязачка при денежном представлении, оно можжет быть как и '123.10' так и 123.1 и просто 123. Сделал преобразование в смом екселе в тип столбца числовой - вроде помогло..... Но геморой все равно есть...... |
© 2000-2024 Fox Club  |