AXForum  
Вернуться   AXForum > Прочие обсуждения > Курилка
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 10.04.2017, 04:25   #1  
skuull is offline
skuull
Участник
Most Valuable Professional
Лучший по профессии 2014
 
699 / 752 (27) +++++++
Регистрация: 08.03.2013
Адрес: ХЗ
D365O 1611
X++:
driverLog = TMSDriverLog::find(appt.ApptId, true);
driverLog.ActualStartUTCDateTime = DateTimeUtil::utcNow();
driverLog.updateDates();
driverLog.update();
Зачем проверять что файнд что-то вернул ? Лучше покажем пользователю что запись никогда не была выбрана

И второй момент, на демо данных у LoadId и TMSApptId одна и та же номерная серия, поэтому вводя аппоинтмент АХ всегда находит сушествующий лоад который никакого отношения к делу не имееет, хотя хотелось бы аппоинтмент

X++:
case #CheckInOutId:
                if (mode == WHSWorkExecuteMode::DriverCheckIn || mode == WHSWorkExecuteMode::DriverCheckOut)
                {
                    if (WHSLoadTable::exist(_data))
                    {
                        fieldValues.insert(#CheckInOutId, _data);
                        fieldValues.insert(#LoadId, _data);
                    }
                    else if (WHSShipmentTable::exist(_data))
                    {
                        fieldValues.insert(#CheckInOutId, _data);
                        fieldValues.insert(#LoadId, WHSShipmentTable::find(_data).LoadId);
                    }
                    else if (TMSAppointment::exist(_data) && TMSAppointment::find(_data).ApptRefType == TMSApptRefType::Load)
                    {
                        fieldValues.insert(#CheckInOutId, _data);
                        fieldValues.insert(#LoadId, TMSAppointment::find(_data).ApptRefNum);
                    }
                    else
                    {
                        errorMessage = "@WAX1081";
                        hasError = true;
                        break;
                    }
                    
                    if (WHSLoadTable::exist(fieldValues.lookup(#LoadId)))
                    {
                        hasError = this.validateLoadIdCheckOut(fieldValues.lookup(#LoadId));
                    }
                    else
                    {
                        errorMessage = "@WAX3626";
                        hasError = true;
                    }
                }
                break;

Последний раз редактировалось skuull; 10.04.2017 в 04:35.
Теги
axapta, cil, d365fo, guid, rasset, uuid, uuidv7, баг

 


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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 14:29.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.