AXForum  
Вернуться   AXForum > Microsoft Dynamics NAV > NAV: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 09.03.2011, 10:05   #1  
lobster is offline
lobster
Участник
Аватар для lobster
 
115 / 10 (1) +
Регистрация: 25.04.2008
В таблице имеется поле (тип = код) со значением VIN номера машины например:
WF04XXGBB46R37821
мне нужно написать обработку этого номера, которая буде определять с конца значения VIN'а
седьмой символ по порядку, например при открытии формы.
В данном VIN'е это символ 6, дальше мне нужно уже использовать это значение, т.е. надо
наверное присвоить его переменной. Подскажите пожалуйста, как это сделать.
Старый 09.03.2011, 10:25   #2  
Fly is offline
Fly
Участник
Аватар для Fly
 
102 / 10 (1) +
Регистрация: 05.10.2007
Цитата:
Сообщение от lobster Посмотреть сообщение
В таблице имеется поле (тип = код) со значением VIN номера машины например:
WF04XXGBB46R37821
мне нужно написать обработку этого номера, которая буде определять с конца значения VIN'а
седьмой символ по порядку, например при открытии формы.
В данном VIN'е это символ 6, дальше мне нужно уже использовать это значение, т.е. надо
наверное присвоить его переменной. Подскажите пожалуйста, как это сделать.
Вот такой функцией получаешь свой символ:
COPYSTR("No.", STRLEN("No.") - 6, 1)

На форме делаешь textbox и в свойство SourceExpr вписываешь эту формулу.

UPD: Если тебе надо использовать это значение, то заводишь переменную которая будет являться источником для textbox. Сам расчет по формуле COPYSTR(...)добавь в некую функцию fn_CalcVin. Функцию fn_CalcVin добавь в триггера OnAfterGetRecord и onAfterGetCurrRecord
Старый 09.03.2011, 10:27   #3  
Kadawrik is offline
Kadawrik
Участник
 
279 / 11 (1) +
Регистрация: 04.11.2010
Если Вам нужно именно с конца седьмой символ взять, то можно воспользоваться функцией:
Имя_Переменной := COPYSTR(VIN,STRLEN(VIN)-6,1)
где VIN - то самое поле с кодом
Старый 09.03.2011, 10:29   #4  
Kadawrik is offline
Kadawrik
Участник
 
279 / 11 (1) +
Регистрация: 04.11.2010
Цитата:
Сообщение от Fly Посмотреть сообщение
Вот такой функцией получаешь свой символ:
COPYSTR("No.", STRLEN("No.") - 6, 1)
Одновременно писАли
Старый 09.03.2011, 10:31   #5  
Fly is offline
Fly
Участник
Аватар для Fly
 
102 / 10 (1) +
Регистрация: 05.10.2007
Цитата:
Сообщение от Kadawrik Посмотреть сообщение
Цитата:
Сообщение от Fly Посмотреть сообщение
Вот такой функцией получаешь свой символ:
COPYSTR("No.", STRLEN("No.") - 6, 1)
Одновременно писАли
Старый 09.03.2011, 13:40   #6  
lobster is offline
lobster
Участник
Аватар для lobster
 
115 / 10 (1) +
Регистрация: 25.04.2008
Ребята, спасибо! Получилось)
Старый 09.03.2011, 16:55   #7  
InTacto is offline
InTacto
Участник
Аватар для InTacto
 
323 / 11 (1) +
Регистрация: 09.08.2005
Поставьте проверку на длинну строки( STRLEN("No.") - как раз возвращает длинну) и в SourceExp ф-цию copystr лучше не вставлять, иначе завалится формочка на строке с длинной меньше 6. Ф-ция fn_CalcVin как раз подойдет для всех эксепшенов.
 


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 01:55.