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


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


Сообщений в теме: 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 анонимных