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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 26.05.2004, 12:17   #1  
simply is offline
simply
Участник
 
84 / 10 (1) +
Регистрация: 24.05.2004
Адрес: москва
и еще раз... почему же все таки свич глючит....
все же хотелось бы услышать что нить вразумительное по поводу глюка в свиче...

код вот такой:

PlanBody rsUpdate;
str lineName;

switch (lineName)
{
case 'M01':
ttsbegin;
update_recordset rsUpdate setting Month01 = plan.Month01, State01 = plan.State01
where rsUpdate.PlanID == planId;

ttscommit;
break;

case 'M02':
ttsbegin;
update_recordset rsUpdate setting Month02 = plan.Month01, State01 = plan.State01
where rsUpdate.PlanID == planId;

ttscommit;
break;

}
так вот ... при компиляции, компилятор ругается на сторку "case 'M02':" - "Типы оператора не совместимы с оператором"

сама команда апдейта исполняется нормально... но в кэйс-структуре жить не хочет...
так что это может быть...
Старый 27.05.2004, 10:00   #2  
ta_and is offline
ta_and
Участник
 
226 / 122 (5) +++++
Регистрация: 26.02.2002
Адрес: СПб
Не используйте базовые типы без крайней необходимости.

Попробуйте заменить str на EDT.
Старый 27.05.2004, 10:26   #3  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,701 / 1195 (43) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
А ты ничего существенного не пропустил? Сделал я тестовый JOB

PHP код:
static void Job(Args _args)
{
    
str     lineName;
    ;

    
lineName 'M02';
    switch (
lineName)
    {
    case 
'M01':
        
info('M01');
        break;
    case 
'M02':
        
info('M02');
        break;
    default :
        
info('default');
        break;
    }
    return;

Все нормально отработало! Так что ищи где и что ты пропустил. Может кавычку забыл поставить у M02, может точку с запятой забыл у предыдущей команды.
Старый 27.05.2004, 10:34   #4  
Zabr is offline
Zabr
Участник
Axapta Retail User
 
1,202 / 345 (14) ++++++
Регистрация: 26.06.2002
Адрес: Москва
2 В.М.: там проблема как раз в наличии "update_recordset". Без него - компилируется, с ним - нет.
Старый 27.05.2004, 10:34   #5  
france is offline
france
Участник
 
159 / 11 (1) +
Регистрация: 24.11.2003
Адрес: Москва
а если вынести за Switch пару TTSBegin - TTSCommit?... Может в них дело
Старый 27.05.2004, 11:11   #6  
simply is offline
simply
Участник
 
84 / 10 (1) +
Регистрация: 24.05.2004
Адрес: москва
попробывал запихнуть кейсе-структуру в транзакцию ... бесполезно....
все дело кажеться именно в update_recordset... когда эту команду убираешь... все компилируется нормально...
видимо компилятор не может корректно разобрать сочетание этих лексем.... хотя я могу ошибаться конечно... и дело действительно в какой-то мелочевке...
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Client не видит AOS. Почему ? kst DAX: Администрирование 9 18.12.2006 11:39
Почему может не ловиться исключение korvin DAX: Программирование 5 19.09.2006 16:49
Как же все таки добраться из Axapta до SQL Кандидат DAX: Программирование 5 02.12.2005 11:50
Почему удержание не отнимается а прибавляется к результирующему виду зарплат. 3oppo DAX: Функционал 8 24.08.2005 08:10
Резервирование партионного товара с FIFO по сроку хранения: делал ли кто-нибудь? Falcon DAX: Функционал 9 15.02.2003 00:47

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

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

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