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

Результаты опроса: Оцените полезность этого класса ?
Очень полезно 2 9.09%
Пригодилось 5 22.73%
На досуге посмотрю 13 59.09%
Совершенно ненужная вешь 2 9.09%
Голосовавшие: 22. Вы ещё не голосовали в этом опросе

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 24.11.2004, 10:15   #2  
tron is offline
tron
Участник
 
6 / 10 (1) +
Регистрация: 24.11.2004
Адрес: Томск
Кому импортить проект неохота вот основные части простым текстом:
Таким образом формируется файл из Axapta 3.0
PHP код:
// Tron 01.10.2004
void finalize()
{
    
TextBuffer      textBuffer = new TextBuffer();
    ;
    
// Добавляем тип файла
    
csvTextBuffer "1;" csvTextBuffer;

    
textBuffer.setText(csvTextBuffer);
    
textBuffer.toFile("c:\\data.csv");

    
this.dks_runMacro("Main");
    
super();

А вот собственно макрос на Visual Basic:
PHP код:
Rem Tron 01.10.2004
Rem Загрузка данных из внешних файлов 
// Axapta
Rem Ver1.0.1.5

Dim CurrentString 
As String
Dim Variables 
As String
Dim I 
As Long
Dim NowChar 
As Long

Dim FromRange 
As String
Dim ToRange 
As String
Dim Value 
As String

Sub Main
()
    
Application.ScreenUpdating False
    Application
.Visible False
        
    Import
 
    Sheets
(1).Name "Отчет"
    
Worksheets(1).Activate
    Application
.Visible True
    Application
.ScreenUpdating True
End Sub

Sub Import
()
On Error GoTo ErrorHandler
        Open 
"c:\data.csv" For Input Access Read As #1
        
Line Input #1, Variables
    
        
Do While Not EOF(1)
            
Line Input #1, CurrentString
            
FillWorkSheet
        Loop
    
        Close 
#1
Exit Sub
ErrorHandler
:
    
Worksheets(1).Range("A1").Value "Произошла ошибка обмена данными"
Exit Sub
    
End Sub

Sub FillWorkSheet
()
    
NowChar 3
    Worksheets
(1).Activate
    
    Rem Dks_copyBookMark
    
If (Left(CurrentString1) = "1"Then
        FromRange 
ReturnPart
        ToRange 
ReturnPart
        Range
(FromRange).Select
        Selection
.Copy
        Range
(ToRange).Select
        Selection
.PasteSpecial Paste:=xlPasteColumnWidthsOperation:=xlNone_
            SkipBlanks
:=FalseTranspose:=False
        ActiveSheet
.Paste
    Rem InsertValue
    
ElseIf (Left(CurrentString1) = "2"Then
        ToRange 
ReturnPart
        Value 
ReturnPart
        Worksheets
(1).Range(ToRange).Value Value
    Rem DeleteRow
    
ElseIf (Left(CurrentString1) = "3"Then
        ToRange 
ReturnPart
        CurrentRegion 
ToRange ":" ToRange
        Rows
(CurrentRegion).Select
        Selection
.Delete Shift:=xlUp
    Rem DeleteColumn
    
ElseIf (Left(CurrentString1) = "4"Then
        ToRange 
ReturnPart
        CurrentRegion 
ToRange ":" ToRange
        Columns
(CurrentRegion).Select
        Selection
.Delete Shift:=xlToLeft
    End 
If
    
    
End Sub

Function ReturnPart() As String
    ReturnPart 
""
    
For NowChar NowChar To Len(CurrentString)
        If (
Mid(CurrentStringNowChar1) = ";"Then
            
Exit For
        
End If
        
ReturnPart ReturnPart Mid(CurrentStringNowChar1)
    
Next
    NowChar 
NowChar 1
End 
Function 
Теги
excel

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Исследование скорости экспорта данных из Axapta в Excel (коллективный эксперимент) Gustav DAX: База знаний и проекты 79 13.02.2014 13:18
[Excel] - Несколько версий Excel на машине клиента Андре DAX: Программирование 11 07.08.2007 13:45
Вызов Item() для коллекций Excel Владимир Максимов DAX: Программирование 15 17.08.2006 19:47
Использование OWC.Spreadsheet для ускорения экспорта/импорта в/из Excel. storer DAX: Программирование 24 28.03.2005 19:10
Особенности экспорта данных в Excel Roman-sp DAX: Функционал 18 01.03.2004 12:07

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

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

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