Показать сообщение отдельно
Старый 12.07.2007, 14:12   #12  
Gustav is offline
Gustav
Moderator
Аватар для Gustav
SAP
Лучший по профессии 2009
 
1,858 / 1152 (42) ++++++++
Регистрация: 24.01.2006
Адрес: Санкт-Петербург
Записей в блоге: 19
! АХТУНГ! ЧИСТО В УЧЕБНЫХ ЦЕЛЯХ! (код не работает)
2 adandreev
Довел ваш код до состояния компилируемости (AX 3.0). Ваши ошибки оставил, закомментировав соответствующие строки. Посмотрите, что вы делали не так.

Дальше посыпались ошибки рантайма - с ними уже сами разбирайтесь, если есть желание. А так рекомендую воспользоваться решением blokva и вообще еще что-нибудь поискать по форуму на эту тему. Ссылками вас уже завалили
X++:
/// ЛАБОРАТОРНАЯ РАБОТА

static void da_Import_ItemId_To_CSV(Args _args)
{
    Dimensions                   dimensions;
    filepath               templateFilePath;
    //m_TransportSalesPacking           excel;
    ComExcelDocument_RU            excelDoc;
    IO                                   io;
    FileName fileName, fileNameFrom;
    AsciiIO IoFrom, IoClass;

    InventTable InventTable;
    InventTableModule InventTableModule;

    boolean atLeastOnePosted = false;
    boolean allPosted        = true;


    //static str any2csvField(anyType _perem)
    str any2csvField(anyType _perem)
    {
        str csvField;
        ;
        csvField = '"' + strReplace(_perem,'"',"'") + '"';
        if (typeOf(_perem) == Types::STRING)
            return '"' + strReplace(_perem,'"',"'") + '"';

        return strFmt("%1",_perem);
    }

    //static str con2csvStr(container _con)
    str con2csvStr(container _con)
    {
        counter i;
        str     resu;
    ;
        for(i=1; i <= conLen(_con); i ++)
        {
            if (i > 1)
                resu += ";";
            //resu += m_proc::any2csvField(conPeek(_con,i));
            resu += any2csvField(conPeek(_con,i));
        }
        return resu;
    }


      // void csvReport()
        // {
    void Insert2CSV(anytype param1, anytype param2, anytype param3, anytype param4)

         {
         ;
            //ooo eaao caiieiaiea no?iee a CSV
           //io.write(m_proc::con2csvStr([
           io.write(con2csvStr([
                  param1
                , param2
                , param3
                , param4
                ]));

           }

;

    IoClass     = new AsciiIO(fileName, 'W');
    IoFrom      = new AsciiIO(fileNameFrom, "R");

    if (! IoClass)
        throw error(strFmt("@DIS100404",fileName));
    if (! IoFrom)
        throw error(strFmt("@DIS100404",fileNameFrom));

    //this.Insert2CSV(      "A?oiia"
    Insert2CSV(      "A?oiia",
                          "A?oeeoe",
                          "Iaeiaiiaaiea",
                          "Aa.eci"
                    );


        // Auai?ea cia?aiee io?iie a?oiiu
        //SELECT InventTable.ItemGroupId, InventTable.ItemId, InventTable.ItemName, InventTableModule.ModuleType,
        //InventTableModuleUnitId, InventTableModule.Price
        //FROM InventTable JOIN InventTableModule   WHERE InventTable.ItemGroupId=="AAO"
    while select ItemGroupId, ItemId, ItemName from InventTable
    join ModuleType, UnitId, Price from InventTableModule
    where InventTable.ItemGroupId == "AAO"
    && InventTable.ItemId == InventTableModule.ItemId
    {

        //this.Insert2CSV(  InventTable.ItemGroupId,
        Insert2CSV(  InventTable.ItemGroupId,
                          InventTable.ItemId,
                          InventTable.ItemName,
                          InventTableModule.ModuleType,
                          InventTableModule.UnitId,
                          InventTableModule.Price
                          );
    }


    //io.finalize();

    //al_FileUtils::reportSaveFile(Name_File);
}