Здраствуйте ,
Сделал я перемешение данных в Ехсел . Всё работает . Вот кусочек исходника :
Код:
dt = new DictTable( tableName2Id( "UTSalesPlanTmp" ) );
excel = new ComExcelDocument_RU();
excel.newFile(m_sTemplateFile, false, -1);
tb = new TextBuffer();
_iRow = 1;
z = dt.fieldCnt() - 12;
cVar1 = UTExcelCol2Char( z );
cStr1 = "";
for ( m = 1; m <= z; m ++ )
{
cStr = dt.fieldObject( dt.fieldCnt2Id( m ) ).label( m );
cStr1 = UTExcelCol2Char( m );
excel.insertValue( strFmt("%1%2", cStr1, _iRow ), cStr );
}
while select tmp3
{
_iRow ++;
cStr = "";
for ( m = 1; m <= z; m ++ )
{
fld = fieldId2Ext( dt.fieldCnt2Id( m ), 1 );
cStr += strfmt( "%1", tmp3.( fld ) ) + ( m < z ? num2char( 9 ) : "" );
}
tb.appendText( cStr );
tb.toClipboard();
excel.UTPaste( strFmt("A%1", _iRow, cVar1 ) );
tb.setText("");
}
excel.Visible(true);
excel.finalize();
Ненравиться одно местечко :
Код:
for ( m = 1; m <= z; m ++ )
{
cStr = dt.fieldObject( dt.fieldCnt2Id( m ) ).label( m );
cStr1 = UTExcelCol2Char( m );
excel.insertValue( strFmt("%1%2", cStr1, _iRow ), cStr );
}
У меня для заголовок полей есть свои метки , но dt.fieldObject возвращяет изначальные метки . Например есть поле ModelId , где ExtendedDataType - ItemId и метка своя "Модель" . Но я всё равно получю - "Идентификация товара" . Как можно ето перебить ?
С уважением , Римантас