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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 31.08.2015, 17:59   #1  
Predatore is offline
Predatore
Участник
 
163 / 17 (1) ++
Регистрация: 29.09.2010
Доброго времени суток, комрады!
Чё-то у меня как-то мутно себя ведёт NAV 2013 R2 при работе с Excel через .net библиотечки Экселя.
Ну вот например, хочу я ячейку двойной линией подчеркнуть. Открываю CU Excel Management, смотрю функцию FormatCellBorder, потом смотрю GetBorderWeight и вижу, что не умеет она двойную линию рисовать.
Не беда думаю, сейчас научим. Немного макросов, немного Гугла и в функцию GetBorderWeight добавляются такие строчки:
Код:
XlBorderWeight::Double:
  EXIT(-4119);
Аккуратно правятся все опшены, компилимся, запускаемся и... получаем ошибку: "Нельзя установить свойство Weight у класса Border".
WTF!?!?!?
В чём прикол? Чем константа -4138, которая работает, лучше константы -4119?
Старый 31.08.2015, 18:36   #2  
InTacto is offline
InTacto
Участник
Аватар для InTacto
 
323 / 11 (1) +
Регистрация: 09.08.2005
вам нужно число 4, а не -4119



Старый 01.09.2015, 10:20   #3  
Predatore is offline
Predatore
Участник
 
163 / 17 (1) ++
Регистрация: 29.09.2010
Цитата:
Сообщение от InTacto Посмотреть сообщение
вам нужно число 4, а не -4119
С Вами не соглассен ни Гугл, ни НАВ. 4 - это жирная линия, а мне нужна двойная, двойная - это xlDouble, а xlDouble это: -4119
Если не верите Гуглу, он же подсказал, как увидеть значения констант в самом Excel, и вот скриншотик:
Старый 01.09.2015, 11:01   #4  
Predatore is offline
Predatore
Участник
 
163 / 17 (1) ++
Регистрация: 29.09.2010
Цитата:
Сообщение от Predatore Посмотреть сообщение
Цитата:
Сообщение от InTacto Посмотреть сообщение
вам нужно число 4, а не -4119
С Вами не соглассен ни Гугл, ни НАВ. 4 - это жирная линия, а мне нужна двойная, двойная - это xlDouble, а xlDouble это: -4119
Если не верите Гуглу, он же подсказал, как увидеть значения констант в самом Excel, и вот скриншотик:
Частично вычислил проблему. Проблема в том, что NAV 2013 R2 использует какие-то свои константы, никому не известные. Как я сделал такой вывод: очень просто, 4 - это xlDasDot, вот скрин:

А xlDashDot, это внезапно, точка тире. Нав же рисует жирную линую.
Какого органа спрашивается? Зачем нужно было выделяться и придумывать свои константы? И где их собственно посмотреть?

Хм... у меня тут на работе злой фаервол режет картинки, поэтому Вашу я не увидел, а вот она меня натолкнула на мысль одну... и сейчас я буду её думать.
Старый 01.09.2015, 11:18   #5  
InTacto is offline
InTacto
Участник
Аватар для InTacto
 
323 / 11 (1) +
Регистрация: 09.08.2005
Да, не верно написал.
Вам нужно задачть 2 св-ва
Код:
.LineStyle = xlDouble(-4119)
.Weight = xlThick(4)
Вам ругается именно на Weight.
Как вызывается ф-ция, кусок которой вы привели?
Старый 01.09.2015, 11:30   #6  
Predatore is offline
Predatore
Участник
 
163 / 17 (1) ++
Регистрация: 29.09.2010
Цитата:
Сообщение от InTacto Посмотреть сообщение
Да, не верно написал.
Вам нужно задать 2 св-ва
Код:
.LineStyle = xlDouble(-4119)
.Weight = xlThick(4)
Вам ругается именно на Weight.
Как вызывается ф-ция, кусок которой вы привели?
Ну да, всё беглый взгляд и невнимательность. Там 2 свойства, Weight и LineStyle, это я и упустил. Ещё с толку сбило, что кодеюнит из коробки не даёт управлять LineStyle, хотя казалось бы, очевидная вещь.
В общем нафлудил я тут, а всё из-за нашего фаервола, увидь я сразу Вашу картинку, сразу заметил бы, что я не в то свойство стучусь.
Старый 01.09.2015, 22:13   #7  
Sancho is offline
Sancho
Administrator
Аватар для Sancho
Лучший по профессии 2017
Лучший по профессии 2009
 
1,294 / 221 (10) ++++++
Регистрация: 11.01.2006
плюсики расставлять не забываем...
Старый 02.09.2015, 07:49   #8  
rmv is offline
rmv
Участник
 
481 / 11 (1) +
Регистрация: 15.02.2005
Форматировать отчеты кодом в Наве - это жесть. 2015 год на дворе а Вы все PLOX(X,Y) пишете.
Старый 02.09.2015, 10:49   #9  
InTacto is offline
InTacto
Участник
Аватар для InTacto
 
323 / 11 (1) +
Регистрация: 09.08.2005
Уже придумали способ, чтобы пользователь, накидав красивый отчет в экселе, нажал волшебную кнопку и данные сами туда залетели?
Старый 02.09.2015, 15:19   #10  
rmv is offline
rmv
Участник
 
481 / 11 (1) +
Регистрация: 15.02.2005
Цитата:
Сообщение от InTacto Посмотреть сообщение
Уже придумали способ, чтобы пользователь, накидав красивый отчет в экселе, нажал волшебную кнопку и данные сами туда залетели? />
Думаю в годах так в 90.
Ответственный пользователь рисует шапку, строки и подвал отчета. В комментариях к ячейкам пишет откуда что и при каких условиях брать.
Старый 02.09.2015, 17:12   #11  
InTacto is offline
InTacto
Участник
Аватар для InTacto
 
323 / 11 (1) +
Регистрация: 09.08.2005
За шапку и подвал согласен, но во всем бывает исключение: всякие промежуточные итоги или сделать акцент на каких-то определенных цифрах.
 


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

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

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