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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 18.06.2020, 08:53   #3  
GrechkaIsTheBest is offline
GrechkaIsTheBest
Участник
 
2 / 20 (1) +++
Регистрация: 11.10.2010
Нужно тут было в XmlExcelReport_RU добавить колонтитулы, если кому пригодится, некоторые наработки)

X++:
class OxmlWorksheet_RU
{
    DocumentFormat.OpenXml.Spreadsheet.HeaderFooter headerFooter_NEW;
}
private void initWorksheetElements()
{
	if (oxmlElement is DocumentFormat.OpenXml.Spreadsheet.HeaderFooter)
	{
		headerFooter_NEW = oxmlElement as DocumentFormat.OpenXml.Spreadsheet.HeaderFooter;
	}
}
public void addFooter_NEW(str _text, SysAlignment _alignment = SysAlignment::AlignDefault)
{
    DocumentFormat.OpenXml.Spreadsheet.OddFooter    oddFooter;
    str                                             resultText;

    if (headerFooter_NEW)
    {
        oddFooter = headerFooter_NEW.get_OddFooter();
        if (! oddFooter)
        {
            oddFooter = new DocumentFormat.OpenXml.Spreadsheet.OddFooter();
            headerFooter_NEW.set_OddFooter(oddFooter);
        }
        resultText = oddFooter.get_Text();
        resultText += this.getAlignmentStr_NEW(_alignment) + _text;
        oddFooter.set_Text(resultText);
    }
}
public void addHeader_NEW(str _text, SysAlignment _alignment = SysAlignment::AlignDefault)
{
    DocumentFormat.OpenXml.Spreadsheet.OddHeader    oddHeader;
    str                                             resultText;

    if (headerFooter_NEW)
    {
        oddHeader = headerFooter_NEW.get_OddHeader();
        if (! oddHeader)
        {
            oddHeader = new DocumentFormat.OpenXml.Spreadsheet.OddHeader();
            headerFooter_NEW.set_OddHeader(oddHeader);
        }
        resultText = oddHeader.get_Text();
        resultText += this.getAlignmentStr_NEW(_alignment) + _text;
        oddHeader.set_Text(resultText);
    }
}
private str getAlignmentStr_NEW(SysAlignment _alignment)
{
    #define.HeaderFooterAlignmentLeft('&L')
    #define.HeaderFooterAlignmentRight('&R')
    #define.HeaderFooterAlignmentCenter('&C')

    switch (_alignment)
    {
        case SysAlignment::AlignLeft:
            return #HeaderFooterAlignmentLeft;
        case SysAlignment::AlignRight:
            return #HeaderFooterAlignmentRight;
        case SysAlignment::AlignCenter:
            return #HeaderFooterAlignmentCenter;
        default:
            return '';
    }
}

class XmlExcelReport_RU
public void addHeader_NEW(str _text, SysAlignment _alignment = SysAlignment::AlignDefault, anytype _workSheetIdOrName = '')
{
    OXMLWorksheet_RU    worksheet = document.workbook().getWorksheet(_workSheetIdOrName);

    worksheet.addHeader_NEW(_text, _alignment);
}
public void addFooter_NEW(str _text, SysAlignment _alignment = SysAlignment::AlignDefault, anytype _workSheetIdOrName = '')
{
    OXMLWorksheet_RU    worksheet = document.workbook().getWorksheet(_workSheetIdOrName);

    worksheet.addFooter_NEW(_text, _alignment);
}
За это сообщение автора поблагодарили: trud (10).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Excel .NET вставка картинки ex3em DAX: Программирование 10 23.11.2015 10:11
Вставка в Excel из TextBuffer. Кодировка Poleax DAX: Программирование 14 30.03.2011 11:16
Вставка нескольких строк из шаблона Excel breakpoint DAX: Программирование 2 04.06.2009 15:31
Вставка строки в Excel A-Lis-A DAX: Программирование 2 27.09.2007 12:03
вставка столбца в Excel Pawlik DAX: Программирование 23 29.03.2006 12:20

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

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

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