Перейти к содержимому


Заполнение реквизитов по БИК


Сообщений в теме: 35

#21 goodcolor

    Активный участник

  • Пользователи
  • PipPipPip
  • 206 сообщений
  • Пол:Мужчина
  • Город:Йошкар-Ола

Отправлено 28 Июнь 2013 - 07:05

Все заработало. Вот только порядка 600 строк банков с пустыми полями "к счет". Это нормально?
Компания "Хороший Цвет"
www.GoodColor.ru - поставки и производство самосветящихся товаров и материалов

#22 andibrag

    Прежде, чем задать вопрос, продумайте свое решение.

  • Активный пользователь
  • PipPipPip
  • 1 356 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 28 Июнь 2013 - 10:15

Просмотр сообщенияgoodcolor (28 Июнь 2013 - 07:05) писал:

Все заработало. Вот только порядка 600 строк банков с пустыми полями "к счет". Это нормально?
Есть такое. Но это не ошибка.
Чем объясняется его отсутствие - не знаю. По идее каждый коммерческий банк должен иметь коррсчет в РКЦ Центробанка для ведения расчетов.

Творческая группа "ТАВР".

www.TAVR.pro Художественная ковка, металлоконструкции.

www.СтолМет.рф Складные столы, стулья и системы для их хранения


#23 mitkya

    Участник

  • Пользователи
  • PipPip
  • 13 сообщений
  • Пол:Мужчина
  • Город:Краснодар

Отправлено 05 Февраль 2014 - 18:18

Здравствуйте, а как в SAAS все это вставить? Может где-то на форуме есть - не нашел.
Только начал изучать, но уже нравиться....

#24 andibrag

    Прежде, чем задать вопрос, продумайте свое решение.

  • Активный пользователь
  • PipPipPip
  • 1 356 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 06 Февраль 2014 - 11:39

Просмотр сообщенияmitkya (05 Февраль 2014 - 18:18) писал:

Здравствуйте, а как в SAAS все это вставить?
Может и ошибаюсь, но в SAAS свои модули не подключить. Если сделают возможность редактирования хотя бы function_custom.php через интерфейс КБ, тогда шансы есть.

Творческая группа "ТАВР".

www.TAVR.pro Художественная ковка, металлоконструкции.

www.СтолМет.рф Складные столы, стулья и системы для их хранения


#25 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 761 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 06 Февраль 2014 - 12:09

Почему не подключить? Есть же возможность добавления внешних файлов через менеджер внешних файлов.

#26 andibrag

    Прежде, чем задать вопрос, продумайте свое решение.

  • Активный пользователь
  • PipPipPip
  • 1 356 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 06 Февраль 2014 - 14:30

Просмотр сообщенияCbCoder (06 Февраль 2014 - 12:09) писал:

Почему не подключить? Есть же возможность добавления внешних файлов через менеджер внешних файлов.
Менеджер файлов имелось ввиду? Из справки:
Перечень всех внешних файлов, прикрепленных к вашей конфигурации, а также поле для добавления нового внешнего файла.
В списке внешних файлов можно указать, какие сторонние файлы, использующиеся для расширения функциональности клиентской базы, являются внешними файлами конфигурации. Файлы из списка внешних файлов будут включены в состав бэкапа. При восстановлении бекапа, внешние файлы будут также восстановлены.
Насколько я понял - это перечень файлов, которые я уже загрузил и здесь указываю их расположение на диске непосредственно на хостинге с целью их последующего бекапа.
Или я могу загрузить файлы непосредственно с локалки в интернет через интерфейс КБ? Что-то у меня не получается такой опыт.

Творческая группа "ТАВР".

www.TAVR.pro Художественная ковка, металлоконструкции.

www.СтолМет.рф Складные столы, стулья и системы для их хранения


#27 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 761 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 06 Февраль 2014 - 17:32

Неправильно поняли. Когда прописываете путь к файлу, программа сначала проверяет, есть ли уже такой файл. Если да - просто подключает его, а если нет - создает. Разумеется, при этом должны быть права на запись в папку. На саасе они есть не везде.

#28 andibrag

    Прежде, чем задать вопрос, продумайте свое решение.

  • Активный пользователь
  • PipPipPip
  • 1 356 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 06 Февраль 2014 - 21:59

Просмотр сообщенияCbCoder (06 Февраль 2014 - 17:32) писал:

Неправильно поняли. Когда прописываете путь к файлу, программа сначала проверяет, есть ли уже такой файл. Если да - просто подключает его, а если нет - создает. Разумеется, при этом должны быть права на запись в папку. На саасе они есть не везде.
Признаться думал, что на SAAS нет такой возможности. Пробовать не хочу, но спрошу: а папку аналогичным образом можно создать и с какими правами?

Просмотр сообщенияmitkya (05 Февраль 2014 - 18:18) писал:

а как в SAAS все это вставить?
Заходите в Настройки -> Дополнительно -> Менеджер файлов -> Список внешних файлов. Вписываете ../cb/ibik_update.php в поле, нажимаете Добавить файл. Будет создан одноименный файл в указанной папке, после чего сможете его редактировать. Помещаете в него код из одноименного файла выше.

Сообщение отредактировал andibrag: 06 Февраль 2014 - 22:16

Творческая группа "ТАВР".

www.TAVR.pro Художественная ковка, металлоконструкции.

www.СтолМет.рф Складные столы, стулья и системы для их хранения


#29 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 761 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 07 Февраль 2014 - 09:26

Просмотр сообщенияandibrag (06 Февраль 2014 - 21:59) писал:

Признаться думал, что на SAAS нет такой возможности

Эта возможность есть на всех версиях, т.е. необязательно лезть к примеру через ftp чтобы создать свой файл. Но, повторюсь, на SaaS не во всех папках есть доступ на запись.


Просмотр сообщенияandibrag (06 Февраль 2014 - 21:59) писал:

Пробовать не хочу, но спрошу: а папку аналогичным образом можно создать и с какими правами?

Да, разумеется, папки тоже можно создавать, например "include/my_folder/". Права при этом задаются полные (777). Кроме того, папка создастся автоматически при создании файла по несуществующему пути.

#30 Александр Пономарев

    Активный участник

  • Пользователи
  • PipPipPip
  • 435 сообщений
  • Пол:Мужчина
  • Город:Таганрог

Отправлено 28 Декабрь 2014 - 00:54

Я все-таки очень рекомендовал бы владельцам ресурса подумать о предустановленном в SAAS разделе с автоматически обновляемыми таблицами курмов валют, БИК, ИНН, КЛАДР и т.п.

#31 aleks.goodcolor

    Активный участник

  • Пользователи
  • PipPipPip
  • 198 сообщений
  • Пол:Мужчина
  • Город:Йошкар-ола

Отправлено 28 Май 2015 - 09:30

Подскажите пожалуйста данный скрипт еще работает? на 2.0.4 от скрипта нет никакой реакции

#32 andibrag

    Прежде, чем задать вопрос, продумайте свое решение.

  • Активный пользователь
  • PipPipPip
  • 1 356 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 28 Май 2015 - 18:01

Работает. Возможно вносил корректировки. Посмотрю.

Творческая группа "ТАВР".

www.TAVR.pro Художественная ковка, металлоконструкции.

www.СтолМет.рф Складные столы, стулья и системы для их хранения


#33 andibrag

    Прежде, чем задать вопрос, продумайте свое решение.

  • Активный пользователь
  • PipPipPip
  • 1 356 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 04 Июнь 2015 - 02:25

Папка cb_modules размещена в корневой папке программы cb, а не в корне сайта.
Структура таблицы без изменения.
Файл Прикрепленный файл  DateAdd.php   5,21К   7 Количество загрузок: насколько помню не корректировался.
Файл bik_update.php более не используется.
В настройках cron добавьте задание, например Обновление БИК. Настройте срабатывание один раз в неделю, как вариант в понедельник в 03:10 ночи, для чего установите Период -> Расширенный -> 10 3 * * 1, затем внесите в поле Команда следующий код
require_once "cb_modules/DateAdd.php";
// Внимание!!!
// Проверяйте наличие папки tmp с правами 777 внутри папки с установленной программой (cb по умолчанию)

$bik_file_dbf
= 'tmp/bik.dbf';  // файл для хранения базы
$zipfile
=  'tmp/bik.zip';      // файл-архив базы данных
// читаем имя текущего актуального файла из таблицы "Обновления БИК"
$obn
= data_table("Обновление БИК","1  ORDER BY `id` DESC");
// создаем переменную содержащую текущую версию файла XXXX
// в новом году при запуске 1-ый раз переменной присваивается 0101 - 1-е января
$d_old
= (date("y",time())==date("y",strtotime($obn['Дата обновления'])))?mb_substr($obn['Имя файла'], 3, 4,'utf-8'):"0101";
// сохраняем последний номер обновления
$count_upd
= $obn['Номер'];
// вносим в переменную текущую дату
$tmp_time
= time();
$d
=date("md",$tmp_time);
//переменная содержит номер файла: 1 - последняя версия, 2 - предыдущая версия
//в некоторых случаях лучше использовать более ранний файл, установив в переменной значение 2
$f_Num
=1;
$f_c
=0;
// перебор файлов bikXXXX.zip на удаленном сервере
// при наличии новой версии - копируем ее под именем, находящейся в переменной $bik_file_dbf
while ($d>$d_old) {
  $file
='bik'.$d.'.zip';
  $filename
= 'http://pvision.ru/download/bp/bik/'.$file;

 
// проверяем существование файла
 
if ($h=@fopen($filename,'r')) {
       
@fclose($h);
        echo
"файл в наличие $filename\n";
       
//увеличиваем значение счетчика на единицу, если значение совпадет с $f_Num - пробуем копировать файл
        $f_c
++;
       
// при удачном копировании
       
if ($f_c==$f_Num && copy($filename, $zipfile)) {
         
// удаляем DBF файл базы данных
         
@unlink($bik_file_dbf);
          echo
"файл скопирован $zipfile\n";
 
         
// вносим запись об обновленном файле в таблицу "Обновление БИК"
          $new_id
=insert_query($new_data, "Обновление БИК");
          $new_data
['Кто добавил'] = '1';
          $new_data
['Время добавления'] = date("Y-m-d H:i:s");
          $new_data
['Статус записи'] = '0';
          $new_data
['Номер'] = ++$count_upd;
          $new_data
['Дата обновления'] = date("Y-m-d 00:00:00");
          $new_data
['Имя файла'] = $file;
          update_query
($new_data, "Обновление БИК","id=$new_id");
          $new_data
=array(); // очистка массива
       
}
       
// прерываем цикл перебора
       
if ($f_c==$f_Num) break;
 
}

 
// смещение даты на один день
  $tmp_time
= DateAdd('d',-1,$tmp_time);
  $d
=date("md",$tmp_time);
}
// если файл базы не существует (был удален)  - ОБНОВЛЯЕМ ТАБЛИЦУ С ДАННЫМИ
if (!file_exists($bik_file_dbf)) {

 
// ------------------- РАСПАКОВКА АРХИВА
  $zip
= zip_open($zipfile);
 
if ($zip) {
       
while ($zip_entry = zip_read($zip)) {
         
if (zip_entry_open($zip, $zip_entry, "r")) {
                  $buf
= zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));
                  $handle
=fopen($bik_file_dbf, "w");
               
@fwrite($handle, $buf);
                fclose
($handle);
                  zip_entry_close
($zip_entry);
         
}
       
}
        zip_close
($zip);
 
}

 
// ------------------- ВЫГРУЗКА СПРАВОЧНИКА БАНКОВ ИЗ DBF в MYSQL

       
// получаем id таблицы по ее имени
  $sqlQuery
= "SELECT * FROM ".TABLES_TABLE." WHERE name_table='Справочник банков'";
  $result
= sql_query($sqlQuery) or user_error(mysql_error()."<br>".$sqlQuery."<br>", E_USER_ERROR);
  $table
= sql_fetch_array($result);
  $table_id
= $table['id'];

 
// очистка таблицы
  $sqlQuery
= "TRUNCATE TABLE `" . DATA_TABLE . $table_id . "`";
  mysql_query
($sqlQuery);

 
// внесение данных из файла DBF в таблицу
  $f_dbf
= dbase_open($bik_file_dbf, 0);
 
if ($f_dbf) {
        $count
= dbase_numrecords($f_dbf);
       
for ($i = 1; $i <= $count; $i++) {
          $res
= dbase_get_record_with_names($f_dbf, $i);
          $new_bank_id
=insert_query($new_data, "Справочник банков");
          $new_data
['Кто добавил'] = '1';
          $new_data
['Время добавления'] = date("Y-m-d H:i:s");
          $new_data
['Статус записи'] = '0';
          $new_data
['К_счет'] = trim($res['KSNP']);
          $new_data
['БИК'] = trim($res['RKC']);
          $new_data
['Название'] = trim(iconv("cp866", "utf-8", $res['NAMEP']));
          $new_data
['Город'] = trim(iconv("cp866", "utf-8", $res['NNP']));
          $new_data
['Адрес'] = trim(iconv("cp866", "utf-8", $res['ADR']));
          $new_data
['ОКПО'] = trim($res['OKPO']);
          $new_data
['Регион'] = trim($res['RGN']);
          $new_data
['Действующий'] = trim($res['REAL']);
          $new_data
['Короткое название'] = trim(iconv("cp866", "utf-8", $res['NAMEN']));
          $new_data
['Номер'] = $i;
          $new_data
['Инд_номер'] = trim($res['IND']);
          $new_data
['Рег_номер'] = trim($res['REGN']);
          $new_data
['БИК новый'] = trim($res['NEWNUM']);
          $new_data
['Дата изменений'] = trim($res['DT_IZM']);
          update_query
($new_data,"Справочник банков","id=$new_bank_id");
          $new_data
=array(); // очистка массива
       
}
 
        $new_data
['Статус записи'] = '0';
        $new_data
['Количество записей'] = $i;
        update_query
($new_data,"Обновление БИК","id=$new_id");
 
}
}// ОБНОВЛЕНИЕ ТАБЛИЦЫ С ДАННЫМИ ЗАВЕРШЕНО
echo
"Обновлено.";
echo
"\nКоличество новых записей: " . $new_data['Количество записей'] ;
Модули для работы с zip-архивами и dbf-файлами должны быть подключены. Если нет - поговорите с техподдержкой хостинга.

P.S. К администраторам форума - поправьте тему, пожалуйста.

Творческая группа "ТАВР".

www.TAVR.pro Художественная ковка, металлоконструкции.

www.СтолМет.рф Складные столы, стулья и системы для их хранения


#34 maksbazhin

    Активный участник

  • Пользователи
  • PipPipPip
  • 62 сообщений
  • Пол:Мужчина

Отправлено 19 Март 2018 - 14:45

Подниму тему на счет ФИАС
ни чего не придумали?

#35 andibrag

    Прежде, чем задать вопрос, продумайте свое решение.

  • Активный пользователь
  • PipPipPip
  • 1 356 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 20 Март 2018 - 17:31

В этой теме описано как подключать адресную подсказку для полей.
Через dadata можно реализовать и подстановку для БИК, данных юрлиц и прочее.
Почитайте, посмотрите.

Творческая группа "ТАВР".

www.TAVR.pro Художественная ковка, металлоконструкции.

www.СтолМет.рф Складные столы, стулья и системы для их хранения


#36 maksbazhin

    Активный участник

  • Пользователи
  • PipPipPip
  • 62 сообщений
  • Пол:Мужчина

Отправлено 23 Март 2018 - 13:33

Спасибо, то что надо, странно, что через поиск не нашел.





Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных