Биллинговая система Nodeny
20 Сентября 2024, 04:42:29 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Прекращена поддержка версии Nodeny 49
 
   Начало   Помощь Поиск Войти Регистрация  
Страниц: [1] 2 3
  Печать  
Автор Тема: Объединение биллингов  (Прочитано 11844 раз)
vantoo
Пользователь
**

Карма: 0
Offline Offline

Сообщений: 10


Просмотр профиля
« : 13 Февраля 2013, 18:55:47 »

Возникла необходимость перенести все данные из одного биллинга Nodeny в другой.
Перенести нужно как минимум данные абонента, тариф, баланс, доп. поля.
Какие трудности могут возникнуть при этом? Возможно у кого-то есть наработки
по данной задаче?
Спасибо!
Записан
Redmen
NoDeny
Ветеран
*

Карма: 62
Offline Offline

Сообщений: 546


Подяку в КАРМУ


Просмотр профиля WWW
« Ответ #1 : 13 Февраля 2013, 19:17:25 »

В какой другой биллинг?
Записан

Приймаю подяку у вигляді карми... та/або грошей Подмигивающий
t.me/MrMethod
stix
NoDeny
Спец
*

Карма: 72
Offline Offline

Сообщений: 1872


Nodeny Support Team

205539
Просмотр профиля
« Ответ #2 : 13 Февраля 2013, 19:45:00 »

Возникла необходимость перенести все данные из одного биллинга Nodeny в другой.
Перенести нужно как минимум данные абонента, тариф, баланс, доп. поля.
Какие трудности могут возникнуть при этом? Возможно у кого-то есть наработки
по данной задаче?
Спасибо!
делайте экспорт определенных таблиц, да и все.

все банально просто.
экспорт-импорт

баги могут возникнуть с паролями, но есть варианты как этого избежать
Записан
Cell
NoDeny
Спец
*

Карма: 52
Offline Offline

Сообщений: 1407



Просмотр профиля
« Ответ #3 : 13 Февраля 2013, 21:11:04 »

да конечно.... прям экспорт и импорт )))
А косяки с алиасными записями? А совпадение айдишников клиентов в дополнительных полях? А карточки (если есть)? А платежи? А совпадение айдишников тарифов? - это то что бросилось сразу в глаза. Малой кровью не получится. Нужно скрипт писать. С допданными там вообще "рак мозга" т.е. я хз как поступить.  
Записан
stix
NoDeny
Спец
*

Карма: 72
Offline Offline

Сообщений: 1872


Nodeny Support Team

205539
Просмотр профиля
« Ответ #4 : 13 Февраля 2013, 21:50:48 »

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

по-большому счету объединить даже две базы не составит прям уж так большого труда.
а с доп данными тут нужно спросить, чего нужно переносить, я на php формировал массив с данными абонента, потом этим массивом заполнял уже существующую базу.
несколько тысяч абонентов.

хотя как показывает практика, что кажется на первый взгляд не сложным, на деле оказывается нуегонах.

Cell, смотря какая цена вопроса, я думаю справишься !  Подмигивающий
Записан
Cell
NoDeny
Спец
*

Карма: 52
Offline Offline

Сообщений: 1407



Просмотр профиля
« Ответ #5 : 13 Февраля 2013, 21:56:17 »

Ну согласись, что это уже не экспорт и импорт? А уже мозг напрячь.... Подумать, написать что-то на чем-то - хоть на шелле. Простого решения нет. Есть решение через скрипт, которого тоже походу нет и его надо делать.
Записан
stix
NoDeny
Спец
*

Карма: 72
Offline Offline

Сообщений: 1872


Nodeny Support Team

205539
Просмотр профиля
« Ответ #6 : 13 Февраля 2013, 22:05:18 »

да, тут я погорячился сказав импорт-экспорт )

когда сложные данные я разбивал на несколько подзадач.
1.перенос тарифов.
2.перенос покрытия (улиц, домов, блоков и прочего)
3.перенос пользователей, с расстановкой их по покрытию и тарифу.
4.перенос платежей, в том числе формирования доп платежа переноса средств с другого биллинга.
5.перенос карточек.
вот в такой последовательности

куча регулярных выражений, вложенных запросов, условных операторов и вложенных форичей и чарсет превращений

на пхп, синглтоном.

ну такое....было чем заниматься )
Записан
ser970
NoDeny
Спец
*

Карма: 70
Offline Offline

Сообщений: 1323

262462619
Просмотр профиля Email
« Ответ #7 : 13 Февраля 2013, 22:30:46 »

есть скриты...
читаем из базы в текстовый - id+максимальный ид в базе куда переносим...
особых проблем как бы нет = слил пару  баз в одну.
Записан
Cell
NoDeny
Спец
*

Карма: 52
Offline Offline

Сообщений: 1407



Просмотр профиля
« Ответ #8 : 13 Февраля 2013, 22:54:11 »

Ну так можно юзеров с балансами перенести и то с проблемами ))) т.к. алиасы разъедуться и тарифы. По-любасу руками придется перебирать. Нет простых решений )) нет их. lavi тут ближе к истине.
Записан
ser970
NoDeny
Спец
*

Карма: 70
Offline Offline

Сообщений: 1323

262462619
Просмотр профиля Email
« Ответ #9 : 13 Февраля 2013, 22:59:03 »

Ну так можно юзеров с балансами перенести и то с проблемами ))) т.к. алиасы разъедуться и тарифы. По-любасу руками придется перебирать. Нет простых решений )) нет их. lavi тут ближе к истине.
не разъедутся ни алиасы, ни тафиры ,ни платежи ,ни допданые

проверено и работает.

цена вопроса 120бакс
Записан
Cell
NoDeny
Спец
*

Карма: 52
Offline Offline

Сообщений: 1407



Просмотр профиля
« Ответ #10 : 13 Февраля 2013, 23:21:43 »

Ну так можно юзеров с балансами перенести и то с проблемами ))) т.к. алиасы разъедуться и тарифы. По-любасу руками придется перебирать. Нет простых решений )) нет их. lavi тут ближе к истине.
не разъедутся ни алиасы, ни тафиры ,ни платежи ,ни допданые

проверено и работает.

цена вопроса 120бакс
Очень самоуверенно, но цена вопроса вызывает уважение. ))) Описываю ситуацию: база номер 1 как была так и осталась, максимальный айди 600. Вторая база переносится в первую. В ней есть айди 400, 444,523,и 855 которые являются алиасами айди 377 второй базы. Внимание вопрос, как по вашей методике сделать так, чтобы указанные алиасы стали алиасами записи 600+377
А ответ прост - нужно писать скрипт с кучей если и блаблаба. Тоже самое с допданными, тарифами и платежами.)))
Но за 120 баксов я тоже такой скрипт намалюю ))
Хотя нет... не буду перебивать заработок коллеги. Тем более что у него все уже есть. )
Записан
ser970
NoDeny
Спец
*

Карма: 70
Offline Offline

Сообщений: 1323

262462619
Просмотр профиля Email
« Ответ #11 : 13 Февраля 2013, 23:36:20 »

Ну так можно юзеров с балансами перенести и то с проблемами ))) т.к. алиасы разъедуться и тарифы. По-любасу руками придется перебирать. Нет простых решений )) нет их. lavi тут ближе к истине.
не разъедутся ни алиасы, ни тафиры ,ни платежи ,ни допданые

проверено и работает.

цена вопроса 120бакс
Очень самоуверенно, но цена вопроса вызывает уважение. ))) Описываю ситуацию: база номер 1 как была так и осталась, максимальный айди 600. Вторая база переносится в первую. В ней есть айди 400, 444,523,и 855 которые являются алиасами айди 377 второй базы. Внимание вопрос, как по вашей методике сделать так, чтобы указанные алиасы стали алиасами записи 600+377
А ответ прост - нужно писать скрипт с кучей если и блаблаба. Тоже самое с допданными, тарифами и платежами.)))
Но за 120 баксов я тоже такой скрипт намалюю ))
Хотя нет... не буду перебивать заработок коллеги. Тем более что у него все уже есть. )


не самоуверен , а уверен . ибо проверено и не один раз.
можешь рисовать - для меня это не заработок...


з.ы. Cell трудно быть богом, да?
Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4787



Просмотр профиля
« Ответ #12 : 14 Февраля 2013, 00:10:53 »

Описываю ситуацию: база номер 1 как была так и осталась, максимальный айди 600
....
не стал въезжать в ситуацию, но по идее действительно объединить 2 базы нетрудно.

сперва в одной из баз сменить ключ шифрования паролей чтоб был такой же как в другой. затем
update users set id=id+10000;
update users set mid=mid+10000 where mid>0;
update pays set mid=mid+10000 where mid>0;
и с остальными таблицами по аналогии.

10000 - это число превышающее максимальный id в users другого била
Записан
Cell
NoDeny
Спец
*

Карма: 52
Offline Offline

Сообщений: 1407



Просмотр профиля
« Ответ #13 : 14 Февраля 2013, 00:31:08 »

Описываю ситуацию: база номер 1 как была так и осталась, максимальный айди 600
....
не стал въезжать в ситуацию, но по идее действительно объединить 2 базы нетрудно.

сперва в одной из баз сменить ключ шифрования паролей чтоб был такой же как в другой. затем
update users set id=id+10000;
update users set mid=mid+10000 where mid>0;
update pays set mid=mid+10000 where mid>0;
и с остальными таблицами по аналогии.

10000 - это число превышающее максимальный id в users другого била
Ну это идея интереснее, по крайней мере в каком направлении двигаться.
Записан
ser970
NoDeny
Спец
*

Карма: 70
Offline Offline

Сообщений: 1323

262462619
Просмотр профиля Email
« Ответ #14 : 14 Февраля 2013, 01:04:09 »

Цитата: ser970
это не первый раз когда ведешь  как бог . типа я круче всех - показать темы ? или сам поймешь?
У тебя видимо искаженное представление о Боге. Дальше не буду развивать эту тему по религиозным соображениям.
Можешь не трудится показывать темы. Я кажется понимаю что ты имеешь ввиду, но словами выразить не можешь )))
Может я где-то перегибаю палку с своих суждениях, но я при этом выражаю свою точку зрения... только свою и ни чью больше. И нигде, заметь нигде нет ни слова о том, что это абсолютная истина. Чаще всего все мои посты сопровождаются словом ИМХО смысл которого можно узнать в гугле. Так что не примеряй то что я пишу прямо на себя. Можешь помочь - помогай, не можешь - не помогай а не будь такой загадочный. Сначала цену называешь, потом говоришь что это не заработок. ))) Норм заработок, только топик не на это расчитан, а на то, что помогут люди и подскажут человеку что делать. У меня же здесь вполне определенный интерес есть, потому что в скором времени мне придется объединять две базы ))) вот я и участвую в дискуссии, которая превратилась почему-то в кидание какашками.
ок - замнем.

просто я делаю через текстовый файл - у меня так втягиваются данные из 1с.
и на этом было был сделан скрипт - ним объединяли базы и не раз.

что более менее сложно это доп поля. если делать через update, то могет возникнуть ситуация когда поля пересекаются .
притом несколько полей.
 
Записан
Страниц: [1] 2 3
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.20 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!