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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 10.08.2007, 11:24   #1  
Harry is offline
Harry
Участник
 
94 / 10 (1) +
Регистрация: 01.10.2007
Доброе время суток!
У меня такая в проблема: в Нав, не могу загрузить даты - выдает ошибку что формула даты должна содержать временной период. Загружаю из Excel. Подскажите пожалуйста в каком виде должна быть дата, чтобы можно было ее грузить?
Заранее спасибо!
Старый 10.08.2007, 11:54   #2  
Limon is offline
Limon
Участник
 
16 / 10 (1) +
Регистрация: 19.03.2005
Речь идет о регламентной отчетности ?
Старый 10.08.2007, 12:04   #3  
Harry is offline
Harry
Участник
 
94 / 10 (1) +
Регистрация: 01.10.2007
Нет, речь не о регламентной отчетности!
Я загружаю данные в таблицу 12409 (Bank Directory), там есть поле "Дата последнего изменения". Так вот данную дату я не могу загрузить из справочника банков Рф.
Старый 10.08.2007, 12:04   #4  
Fordewind is offline
Fordewind
Участник
 
1,134 / 10 (3) +
Регистрация: 01.12.2005
Могу предположить,за неимением вашего кода, что вам поможет EVALUATE.....
Старый 10.08.2007, 12:41   #5  
Harry is offline
Harry
Участник
 
94 / 10 (1) +
Регистрация: 01.10.2007
Не множко не понял, что вы мне посоветовали, так как я не программист, а консульатант.
Загрузку же делаю через стандартный функционал, форма № 8601. Так вот при загрузке столбцов, где содержится дата, он выдает ошибку!
Вложения
Тип файла: doc ______.doc (26.5 Кб, 65 просмотров)
Старый 10.08.2007, 13:31   #6  
apanko is offline
apanko
MCTS
MCBMSS
Лучший по профессии 2009
 
1,164 / 139 (7) +++++
Регистрация: 24.02.2005
Попробуйте выгрузить этой формой какую-нибуть таблицу, где есть дата.
Посмотрите в каком формате она (дата) выгружается, к такому же виду приведите и загружаемые данные.
Старый 10.08.2007, 13:38   #7  
Harry is offline
Harry
Участник
 
94 / 10 (1) +
Регистрация: 01.10.2007
Цитата:
Сообщение от apanko Посмотреть сообщение
Попробуйте выгрузить этой формой какую-нибуть таблицу, где есть дата.
Посмотрите в каком формате она (дата) выгружается, к такому же виду приведите и загружаемые данные.
Данное действие уже пробовал, та же ошибка.
Старый 10.08.2007, 13:41   #8  
prefreitor is offline
prefreitor
Участник
 
214 / 11 (1) +
Регистрация: 03.10.2006
Надо дорабатывать импорт. EVALUATE действительно поможет. Кстати указанная форма не умеет импортировать и в поля с типом Датаформула.
P.S Желательно в Экселе (при импорте ч-з 8601) чтобы дата была в ячейке с типом текст!
Старый 13.08.2007, 10:05   #9  
Himan is offline
Himan
Участник
Аватар для Himan
 
312 / 12 (1) ++
Регистрация: 07.11.2006
Адрес: Tumen
Цитата:
Сообщение от prefreitor Посмотреть сообщение
Надо дорабатывать импорт. EVALUATE действительно поможет. Кстати указанная форма не умеет импортировать и в поля с типом Датаформула.
P.S Желательно в Экселе (при импорте ч-з 8601) чтобы дата была в ячейке с типом текст!
А где там надо подправить я что то в CU 8601 разобраться не могу, ведь именно он и отвечает за импорт и экспорт
__________________
Рабочий день сокращает жизнь на 8 часов
Старый 13.08.2007, 13:02   #10  
prefreitor is offline
prefreitor
Участник
 
214 / 11 (1) +
Регистрация: 03.10.2006
Есть функция SerialDate2DMY, там идут хитрые преобразования. Вот там можно эти хитрости закомментить и все начнет работать:

DMYDate := 0D;
IF NOT EVALUATE(CalcDate{SerialDate},SerialDateText) THEN //Введем переменную CalcDate (дата)
EXIT(DMYDate);
//хитрые преобразования
{IF SerialDate = 0 THEN
EXIT(DMYDate);

OffsetDate := 01011900D;

// do not add last day.
SerialDate := SerialDate - 1;

// Compensate for Know bug in Excel 1900 is not a leapyear
IF SerialDate > 60 THEN
SerialDate := SerialDate - 1;

NoOfCalc := SerialDate / 9999;
NoOfCalc := ROUND(NoOfCalc,1,'<');
RemainingDays := SerialDate MOD 9999;

FOR I := 1 TO NoOfCalc DO
OffsetDate := CALCDATE('+9999<D>',OffsetDate);

IF RemainingDays <> 0 THEN
OffsetDate := CALCDATE('+' + FORMAT(RemainingDays) + '<D>',OffsetDate);

EXIT(OffsetDate);
}
EXIT(CalcDate);
Старый 20.02.2008, 09:40   #11  
by_HT is offline
by_HT
Участник
 
195 / 10 (1) +
Регистрация: 12.10.2007
Получается, что данные с типом Дата, просто пропускаются?!
Старый 20.02.2008, 09:56   #12  
prefreitor is offline
prefreitor
Участник
 
214 / 11 (1) +
Регистрация: 03.10.2006
Цитата:
Сообщение от by_HT Посмотреть сообщение
Получается, что данные с типом Дата, просто пропускаются?!
Нет, не пропускаются, а преобразуются при помощи EVALUATE, смотрите первые строчки приведенного кода.
 


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

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

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