AXForum  
Zurück   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Kennwort vergessen?
Registrieren Forum Rules Hilfe Benutzerliste Heutige Beiträge Suchen

 
 
Themen-Optionen Thema durchsuchen Ansicht
Alt 12.06.2010, 14:11   #1  
serbgush ist offline
serbgush
Участник
 
9 / 10 (1) +
Registriert seit: 05.06.2010
Blog-Einträge: 1
Как преобразовать банковский счёт в код IBAN
Нужен код преобразующий банковский счёт в код IBAN, для 1380 клиентов. Начальство задало задание написать программу состоящую из нескольких строк кода. Программу можно было написать нагенерировав множество строк кода в Excel с последующей их вставкой в Джоб.
Им не понравилось, что надо много записей вставлять в Джоб, мол можно несколькими записями строк кода решить данную задачу.
Фамилия № банковского счёта IBAN
Агапов 1102030082856120 KZ110204F0345GF56745
Аглямов 1102030082856120 KZ110204F0345GF56746
Агапитов 1102030082856120 KZ110204F0345GF56747
Берковски 1102030082856120 KZ110204F0345GF56748
Богдаев 1102030082856120 KZ110204F0345GF56749
Предыдущий пример для одной записи выглядел так -
static void Job 23(Args _args)
{
EmplBank Account_RU emplBankAccount_RU;
;
update recordset emplBankAccount_RU setting AccountNum='KZ110204F0345GF56745' where emplBankAccount_RU.AccountNum=='1102030082856120';
}
Уму не приложу как можно поменять значение несколькими строками кода. Помогите! Если не выполню то меня выгонят с работы.
Alt 12.06.2010, 15:18   #2  
George Nordic ist offline
George Nordic
Модератор
Benutzerbild von George Nordic
Злыдни
 
4.480 / 1255 (50) ++++++++
Registriert seit: 17.12.2003
Ort: Moscow
Blog-Einträge: 9
1. Переименовал тему. Было "IBAN". Не очень информативно.

2. Скажите поточнее условия задачи - а где лежат данные с соответствием?

3. Можно посмотреть на лист Ёхеля, и по нему преобразовать.
3.1. Быстрый Excel
3.2. Как-то так:

X++:
static void GetDataFromExcel(Args _args) 
{ 
   OdbcConnection   connection; 
   Statement            statement; 
   ResultSet             resultset; 
   LoginProperty       LP = new LoginProperty();
   EmplBank Account_RU emplBankAccount_RU
   ; 

   try 
   { 
       ttsbegin; 
       LP.setDSN("Excel4"); //Имя соединения

       connection  = new OdbcConnection(LP); 
       statement   = connection.createStatement(); 
       resultset   = statement.executeQuery ("SELECT * FROM [Worksheet1$]");  //имя листа

       while (resultset.next()) 
       { 
           //получаем необходимые данные из столбцов
           select forupdate emplBankAccount_RU 
               where emplBankAccount_RU.AccountNum == resultset.getString(2)
               if(emplBankAccount_RU)
               {
                   emplBankAccount_RU.AccountNum = resultset.getString(3);
                   emplBankAccount_RU.update();
               }
       } 
       connection = NULL; 
       ttscommit; 
   } 
   catch (Exception::Error) 
   { 
       connection = NULL; 
       ttsAbort; 
   } 
}
This post has been rated by: serbgush (1).
Alt 12.06.2010, 15:27   #3  
Gustav ist offline
Gustav
Moderator
Benutzerbild von Gustav
SAP
Лучший по профессии 2009
 
1.858 / 1152 (42) ++++++++
Registriert seit: 24.01.2006
Ort: Санкт-Петербург
Blog-Einträge: 19
Ох, да вы не уйметесь А начальство тоже "хорошо" - им надо побыстрей коды заменить или протестировать вас как программера? Что-то не пойму..

Читайте повнимательнее свои предыдущие темы. Вам уже давался совет иного характера, чем генерирование 1380 строк для джоба:
Zitat:
Zitat von Gustav Beitrag anzeigen
Можно еще освоить чтение из Excel, если вам более по душе цикл. Воспользуйтесь Вспомогательный класс для импорта из Excel через ADO или Импорт из 'офисной БД' (Excel, Access). Только времени займет больше, чем создание формулы в Excel, а результат будет тем же
И вопрос ваш должен звучать не как замена каких-то конкретных кодов чего-либо, а пошире, что-нибудь вроде "Чтение значения из Excel и запись его в таблицу Аксапты".

А если ссылки в цитате вас не устроят, то еще на Форуме существует поиск. Поищите по строке "Excel импорт".
This post has been rated by: serbgush (1).
Alt 12.06.2010, 15:31   #4  
Gustav ist offline
Gustav
Moderator
Benutzerbild von Gustav
SAP
Лучший по профессии 2009
 
1.858 / 1152 (42) ++++++++
Registriert seit: 24.01.2006
Ort: Санкт-Петербург
Blog-Einträge: 19
Zitat:
Zitat von George Nordic Beitrag anzeigen
2. Скажите поточнее условия задачи - а где лежат данные с соответствием?
Джордж, пройди по моей ссылке - это тема уже в четвертый раз поднимается
Alt 12.06.2010, 15:49   #5  
serbgush ist offline
serbgush
Участник
 
9 / 10 (1) +
Registriert seit: 05.06.2010
Blog-Einträge: 1
Коды IBAN на которые надо заменить банковский счёт клиента прислали в формате Excel из банка. В соответствии с этой таблицей надо выбрать поля из столбца IBAN и заменить этими полями запись AccountNum - банковский счёт сотрудника в общей таблице счетов emplBankAccount_RU
Alt 14.06.2010, 20:47   #6  
serbgush ist offline
serbgush
Участник
 
9 / 10 (1) +
Registriert seit: 05.06.2010
Blog-Einträge: 1
IBAN
Уважаемый George Nordic я написал код как вы и посоветовали он откомпилировался без ошибок. Единственнственная проблема возникает в момент запуска . По моменту запуска выдается ошибка следующего содержания -
1.Невозможно выбрать запись
2.[Microsoft] [Драйвер ОDBCExcel].Недопустимое имя Worksheet1$. Проверьте, что оно не содержит недопустимые символы или знаки препинания, а также не является слишком длинным.
Помогите пожалуйста исправить ошибку.
Может как-то надо подготовить таблицу Excel.
Alt 15.06.2010, 13:36   #7  
Gustav ist offline
Gustav
Moderator
Benutzerbild von Gustav
SAP
Лучший по профессии 2009
 
1.858 / 1152 (42) ++++++++
Registriert seit: 24.01.2006
Ort: Санкт-Петербург
Blog-Einträge: 19
Zitat:
Zitat von serbgush Beitrag anzeigen
Недопустимое имя Worksheet1$
Вместо Worksheet1 должно быть имя вашего листа Excel, содержащего данные. Если имя листа по умолчанию не изменялось, то у вас должно быть либо Sheet1, либо Лист1. Соответственно, в выражение SELECT подставляете либо [Sheet1$], либо [Лист1$].
Alt 15.06.2010, 13:39   #8  
George Nordic ist offline
George Nordic
Модератор
Benutzerbild von George Nordic
Злыдни
 
4.480 / 1255 (50) ++++++++
Registriert seit: 17.12.2003
Ort: Moscow
Blog-Einträge: 9
Э... возможно, сначала надо правильно настроить ODBC. В нем создать соединение с источником типа xls и путь к файлу.

С Уважением,
Георгий

Upd: Часть темы вынесена в ветку Может не стоит мучиться, если вы не умеете программировать
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Счет фактура по строке общего журнала Starling DAX: Функционал 2 28.09.2011 18:31
Channel9: Peter Villadsen and Gustavo Plancarte: X++ to MSIL Blog bot DAX Blogs 30 24.08.2010 17:11
Счет и корр. счет не могут быть одинаковыми? Flomik DAX: Функционал 32 10.03.2010 10:19
Перечисление денег со счета банка на счет деньги в пути.Как правильно? Aquarius DAX: Функционал 1 13.04.2007 22:44
sp5. Возможность получить Корр.счет ГК попроводкам клиента/поставщика без извращений studentLPC DAX: Функционал 20 27.05.2003 13:55

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Gehe zu

Рейтинг@Mail.ru
Alle Zeitangaben in WEZ +3. Es ist jetzt 18:53 Uhr.
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.