Инициализация сессии
BEGIN -- Инициализация сессии SS_AUTHENTICATION_PKG.LOGIN( vch_VC_IP => '127.0.0.1', vch_VC_LOGIN => 'user', vch_VC_PASSWORD => 'password', vch_VC_APP_CODE => 'NETSERV_ARM_Private_Office', vch_VC_CLN_APPID => 'my app info'); -- Заполнение временных таблиц AP_USER_OFFICE_PKG.FILL_WELCOME_INFO_FOR_USER; END;
vch_VC_IP
— IP-адрес, с которого выполняется вход в системуvch_VC_LOGIN
— логин пользователя на приложениеvch_VC_PASSWORD
— пароль пользователя на приложениеvch_VC_APP_CODE
— код приложения (NETSERV_ARM_Private_Office — личный кабинет абонента, NETSERV_ARM_ISP — офис оператора связи)vch_VC_CLN_APPID
— информационная строка приложения (название, версия и т.д.)
Для версии 4.1.2 и выше - убираем заполнение временных таблиц.
Получение списка договоров
SELECT * FROM AP_V_USER_OFFICE_CONTR
Получение списка лицевых счетов
SELECT * FROM AP_V_PERSONAL_ACCOUNTS
Получение списка оборудования
SELECT * FROM AP_V_USER_OFFICE_DEVICES
Получение списка оказываемых услуг
SELECT N_DOC_ID, N_ACCOUNT_ID, VC_ACCOUNT, N_GOOD_ID, VC_GOOD_NAME, N_GOOD_TYPE_ID, VC_USER_REM, N_OBJECT_ID, VC_OBJECT_NAME, N_PRICE_LINE_ID, N_CONTRACT_ID, VC_CONTRACT_NAME, VC_CONTRACT_CODE, D_BEGIN, D_END, VC_CURRENCY, VC_QUANT_UNIT, N_CURRENT_VALUE, N_SERVS_SUM, N_SERVS_WRITEOFF_SUM, N_ADD_SERVS_SUM, N_PREFFERED_GOOD_ID, (SELECT S.VC_COLUMN_NAME FROM AP_V_USER_OFFICE_SERVS S WHERE S.N_GOOD_ID = N_PREFFERED_GOOD_ID) VC_PREFFERED_GOOD_NAME, B_IP_TRAFFIC, B_VOICE_TRAFFIC, B_ADDSERVS FROM TABLE(AP_USER_OFFICE_PKG.USERS_BILLED_SERVS_LIST(<dt_D_BEGIN>, <dt_D_END>))
Подписка на услуги
Получение списка подписок по договору
SELECT * FROM AP_V_USER_OFFICE_GOODS WHERE N_DOC_ID => :num_N_DOC_ID
num_N_DOC_ID
— идентификатор договора
Получение списка доступных для смены тарифов
SELECT * FROM TABLE(AP_USER_OFFICE_PKG.USER_AVAILABLE_SERVS_LIST( <num_N_CONTRACT_ID>, <num_N_ACCOUNT_ID>, <num_N_OBJECT_ID>, SYSDATE)) WHERE N_PROVIDING_TYPE_ID = SYS_CONTEXT('CONST', 'REND_TYPE_Periodic')
num_N_CONTRACT_ID
— идентификатор договораnum_N_ACCOUNT_ID
— идентификатор лицевого счетаnum_N_OBJECT_ID
— идентификатор оборудования
Смена тарифа
DECLARE num_N_NEW_SUBJ_GOOD_ID AP_V_USER_OFFICE_GOODS.N_SUBJ_GOOD_ID%TYPE; BEGIN num_N_NEW_SUBJ_GOOD_ID := AP_USER_OFFICE_PKG.CHANGE_TARIFF( num_N_SUBJ_GOOD_ID => 133515301, num_N_GOOD_ID => 1214401, dt_D_CHANGE => TO_DATE('05.01.2007 00:00:00', 'DD.MM.YYYY HH24:MI:SS'), b_CloseCurrentInvoice => MAIN.b_FALSE, b_ChangeImmediately => MAIN.b_FALSE); END;
num_N_NEW_SUBJ_GOOD_ID
— идентификатор создаваемой подписки на услугиnum_N_SUBJ_GOOD_ID
— идентификатор подписки на услуги для смены тарифаnum_N_GOOD_ID
— идентификатор нового тарифаdt_D_CHANGE
— дата смены тарифа (по умолчанию — SYSDATE)b_CloseCurrentInvoice
— флаг досрочного закрытия текущего инвойса (MAIN.b_TRUE — требуется досрочное закрытие, MAIN.b_FALSE — досрочное закрытие не требуется)b_ChangeImmediately
— флаг срочной смены тарифа (MAIN.b_TRUE — срочная смена, MAIN.b_FALSE — обычная смена). Данный флаг имеет смысл только при установленииb_CloseCurrentInvoice
в MAIN.b_TRUE
Управление услугой доступа
BEGIN AP_USER_OFFICE_PKG.ACCESS_SERV_CHG_STATE( num_N_GOOD_ID => 75801, num_N_PARENT_GOOD_ID => 17814301, num_N_INVOICE_ID => 7646530601, num_N_OBJECT_ID => 164032791, num_N_ACCOUNT_ID => 164032391, b_Enable => 1); END;
num_N_GOOD_ID
— идентификатор услуги доступа (позиция номенклатуры)num_N_PARENT_GOOD_ID
— идентификатор тарифного плана (позиция номенклатуры)num_N_INVOICE_ID
— идентификатор инвойсаnum_N_OBJECT_ID
— идентификатор оборудованияnum_N_ACCOUNT_ID
— идентификатор лицевого счетаb_Enable
— флаг включения (0
— выключение,1
— включение)
Прием оплаты по карте оплаты
BEGIN AP_USER_OFFICE_PKG.ACTIVATE_CARD( num_N_CARD_NO => '12345', vch_VC_PIN => '12345', num_N_ACCOUNT_ID => 164032391); END;
num_N_CARD_NO
— номер картыvch_VC_PIN
— пин-код картыnum_N_ACCOUNT_ID
— идентификатор лицевого счета