Документация iSZN
pkPayoutDoc.sql
Сообщения об ошибках
Error_NoPayoutDocKind
PROCEDURE Error_NoPayoutDocKind(iID PLS_INTEGER);
Описание
Генерирует exception «Вид выплатного документа не существует».
Error_DocKindNotSupported
PROCEDURE Error_DocKindNotSupported(iID PLS_INTEGER);
Описание
Генерирует exception «Операция не поддерживается для документа...».
Error_NoMassDocForBasePWay
PROCEDURE Error_NoMassDocForBasePWay(iRgnID PLS_INTEGER, iID PLS_INTEGER);
Описание
Генерирует exception «Для базового способа выплаты не задан вид массового выплатного документа».
Error_NoPayoutDoc
PROCEDURE Error_NoPayoutDoc(iRgnID PLS_INTEGER, iID PLS_INTEGER);
Описание
Генерирует exception «Документ оплаты сумм не найден».
Error_InvalidDeductionParams
Описание
Генерирует exception «Недопустимые параметры удержания сумм».
Error_DuplicatePODocNumber
PROCEDURE Error_DuplicatePODocNumber(iPODocKindID PLS_INTEGER, dDate DATE, iNumber PLS_INTEGER);
Описание
Генерирует exception «Обнаружен дубликат документа об оплате с номером ...».
Получение характеристик различных объектов
GetPayoutDocKindName
FUNCTION GetPayoutDocKindName(iID PLS_INTEGER, iStrict PLS_INTEGER := 0) RETURN VARCHAR2;
Описание
Возвращает наименование вида выплатного документа. При отсутствии документа поведение определяется параметром iStrict.
GetMassPayoutDocKindID
FUNCTION GetMassPayoutDocKindID(iBasePWayRgnID PLS_INTEGER, iBasePWayID PLS_INTEGER, iStrict PLS_INTEGER := 1) RETURN PLS_INTEGER;
Описание
Возвращает ID вида массового выплатного документа по виду базового способа выплаты. Если базовый способ выплаты не существует, возникает exception. Если у базового способа выплаты не задан вид документа об оплате, то при iStrict=1 возникает exception, при iStrict=0 возвращает null.
GetPayoutDocKindID
FUNCTION GetPayoutDocKindID(iRegionID PLS_INTEGER, iID PLS_INTEGER, iStrict PLS_INTEGER) RETURN PLS_INTEGER;
Описание
Возвращает ID вида документа оплаты сумм. При отсутствии документа поведение определяется параметром iStrict.
GetPayoutDocName
FUNCTION GetPayoutDocName(iRegionID PLS_INTEGER, iID PLS_INTEGER, iStrict PLS_INTEGER) RETURN VARCHAR2;
Описание
Возвращает наименование документа оплаты сумм. При отсутствии документа поведение определяется параметром iStrict.
GetPayoutDocDate
FUNCTION GetPayoutDocDate(iRegionID PLS_INTEGER, iID PLS_INTEGER, iStrict PLS_INTEGER) RETURN DATE;
Описание
Возвращает дату документа оплаты сумм. При отсутствии документа поведение определяется параметром iStrict.
GetPayoutDocNumber
FUNCTION GetPayoutDocNumber(iRegionID PLS_INTEGER, iID PLS_INTEGER, iStrict PLS_INTEGER) RETURN PLS_INTEGER;
Описание
Возвращает номер документа оплаты сумм. При отсутствии документа поведение определяется параметром iStrict.
GetPayoutDocNotes
FUNCTION GetPayoutDocNotes(iRegionID PLS_INTEGER, iID PLS_INTEGER, iStrict PLS_INTEGER) RETURN VARCHAR2;
Описание
Возвращает примечания к документу оплаты сумм. При отсутствии документа поведение определяется параметром iStrict.
Работа с документами об оплате
AllocateNewPayoutDoc
FUNCTION AllocateNewPayoutDoc(iRegionID PLS_INTEGER) RETURN PLS_INTEGER;
Описание
Распределяет и возвращает новый ID для документа массовой оплаты в указанном районе.
GetNextPayoutDocNumber
FUNCTION GetNextPayoutDocNumber(iRegionID PLS_INTEGER, iKindID PLS_INTEGER, dDate DATE) RETURN PLS_INTEGER;
Описание
Возвращает следующий по порядку номер документа об оплате в указанном районе для указанной даты. Фактически дата округляется до года, т. е. номера распределяются по порядку с начала года в разрезе района и вида документа.
CheckPODocNumNotExists
PROCEDURE CheckPODocNumNotExists(iRegionID PLS_INTEGER, iKindID PLS_INTEGER, dDate DATE, iNumber PLS_INTEGER);
Описание
Проверяет, что документ об оплате с указанным номером отсутствует, в противном случае вызывает exception.
Параметры:
- iRegionID - район, в котором выполняется поиск;
- iKindID - ID вида документа;
- dDate - дата (округляется до года); документ ищется за указанный год.
CreatePayoutDoc
PROCEDURE CreatePayoutDoc( iRegionID PLS_INTEGER, iID PLS_INTEGER, iDocKindID PLS_INTEGER, iBasePWayRgnID PLS_INTEGER, iBasePWayID PLS_INTEGER, iOrgRgnID PLS_INTEGER, iOrgID PLS_INTEGER, PKinds IN TPKindInfoList, dDocDate DATE, iDocNumber PLS_INTEGER, sDocNotes VARCHAR2, sNotes VARCHAR2); -- То же самое, но автоматически выделяет ID документа и возвращает его в качестве результата. FUNCTION CreatePayoutDoc( iRegionID PLS_INTEGER, iDocKindID PLS_INTEGER, iBasePWayRgnID PLS_INTEGER, iBasePWayID PLS_INTEGER, iOrgRgnID PLS_INTEGER, iOrgID PLS_INTEGER, PKinds IN TPKindInfoList, dDocDate DATE, iDocNumber PLS_INTEGER, sDocNotes VARCHAR2, sNotes VARCHAR2) RETURN PLS_INTEGER;
Описание
Создаёт документ об оплате.
Параметры:
- iRegionID, iID - ключ документа;
- iDocKindID - ID вида документа об оплате;
- iBasePWayRgnID, iBasePWayID - ключ базового способа выплаты;
- iOrgRgnID, iOrgID - ключ организации, сформировавшей документ;
- PKinds - список ключей видов выплат с отчётными датами;
- dDocDate - дата документа;
- iDocNumber - номер документа;
- sDocNotes - примечания к документу;
- sNotes - дополнительные примечания; к ним автоматически будет добавлено полное наименование документа и список видов выплат.
CreatePayoutDoc
FUNCTION CreatePayoutDoc( iRegionID PLS_INTEGER, iDocKindID PLS_INTEGER, iBasePWayRgnID PLS_INTEGER, iBasePWayID PLS_INTEGER, iOrgRgnID PLS_INTEGER, iOrgID PLS_INTEGER, PKinds IN TPKindInfoList, dDocDate DATE, iDocNumber PLS_INTEGER, sDocNotes VARCHAR2, sNotes VARCHAR2) RETURN PLS_INTEGER;
Описание
То же самое, но автоматически выделяет ID документа и возвращает его в качестве результата.
PayoutDoc_LoadPKinds
FUNCTION PayoutDoc_LoadPKinds(iRegionID PLS_INTEGER, iID PLS_INTEGER) RETURN uszn.TRgnKeyList;
Описание
Загружает и возвращает список видов выплат для указанного выплатного документа.
PayoutDoc_LoadPKindsInfo
FUNCTION PayoutDoc_LoadPKindsInfo(iRegionID PLS_INTEGER, iID PLS_INTEGER) RETURN TPKindInfoList;
Описание
Загружает и возвращает информацию по видам выплат для указанного выплатного документа.
PayoutDoc_UpdateStatistics
PROCEDURE PayoutDoc_UpdateStatistics(iRegionID PLS_INTEGER, iID PLS_INTEGER);
Описание
Вычисляет и записывает в выплатной документ данные по суммам и количествам назначений и получателей.
PayoutDoc_SetFixed
PROCEDURE PayoutDoc_SetFixed(iRegionID PLS_INTEGER, iID PLS_INTEGER, iIsFixed PLS_INTEGER);
Описание
Устанавливает или сбрасывает у документа оплаты признак “зафиксирован”.
PayoutDoc_IsDenial
FUNCTION PayoutDoc_IsDenial(iRegionID PLS_INTEGER, iID PLS_INTEGER) RETURN PLS_INTEGER;
Описание
Возвращает, является ли документ оплаты решением об отказе [в выдаче ТМЦ]. Если документ не существует, возвращает null.
Полная отмена (удаление) документа об оплате
PayoutDoc_Rollback
PROCEDURE PayoutDoc_Rollback( iRegionID PLS_INTEGER, iPayoutDocID PLS_INTEGER, iAudOriginID PLS_INTEGER, sAudNotes VARCHAR2 := NULL, iAudMassOpID PLS_INTEGER := NULL); -- Устанавливает дату передачи сведений на оплату в платёжную организацию для сумм, оплаченных по указанному документу -- оплаты. -- Параметры: -- iRegionID, iPayoutDocID - ключ документа оплаты сумм; -- dDispatchDate - задаваемая дата передачи сведений; -- iUpdateExisting - обновлять ли дату суммам, для которых она уже задана (0/1); -- iAudOriginID - ID источника события для аудита; -- sAudNotes - примечания для аудита; -- iAudMassOpID - ID записи аудита массовой операции. -- Возвращает количество назначений, для которых была задана дата получения сумм. FUNCTION PayoutDoc_SetDispatchDate( iRegionID PLS_INTEGER, iPayoutDocID PLS_INTEGER, dDispatchDate DATE, iUpdateExisting PLS_INTEGER, iAudOriginID PLS_INTEGER, sAudNotes VARCHAR2 := NULL, iAudMassOpID PLS_INTEGER := NULL) RETURN PLS_INTEGER;
Описание
Выполняет отмену документа массовой оплаты:
- меняет статусы сумм на предыдущие;
- зануляет ссылку на выплатной документ, по которому были оплачены суммы;
- удаляет документ массовой оплаты.
Параметры:
- iRegionID, iPayoutDocID - ключ документа оплаты сумм;
- iAudOriginID - ID источника события для аудита;
- sAudNotes - примечания для аудита;
- iAudMassOpID - ID записи аудита массовой операции.
PayoutDoc_SetDispatchDate
FUNCTION PayoutDoc_SetDispatchDate( iRegionID PLS_INTEGER, iPayoutDocID PLS_INTEGER, dDispatchDate DATE, iUpdateExisting PLS_INTEGER, iAudOriginID PLS_INTEGER, sAudNotes VARCHAR2 := NULL, iAudMassOpID PLS_INTEGER := NULL) RETURN PLS_INTEGER;
Описание
Устанавливает дату передачи сведений на оплату в платёжную организацию для сумм, оплаченных по указанному документу
оплаты.
Параметры:
- iRegionID, iPayoutDocID - ключ документа оплаты сумм;
- dDispatchDate - задаваемая дата передачи сведений;
- iUpdateExisting - обновлять ли дату суммам, для которых она уже задана (0/1);
- iAudOriginID - ID источника события для аудита;
- sAudNotes - примечания для аудита;
- iAudMassOpID - ID записи аудита массовой операции.
Возвращает количество назначений, для которых была задана дата получения сумм.
PayoutDoc_SetReceiptDate
FUNCTION PayoutDoc_SetReceiptDate( iRegionID PLS_INTEGER, iPayoutDocID PLS_INTEGER, dReceiptDate DATE, iUpdateExisting PLS_INTEGER, iAudOriginID PLS_INTEGER, sAudNotes VARCHAR2 := NULL, iAudMassOpID PLS_INTEGER := NULL) RETURN PLS_INTEGER;
Описание
Устанавливает дату получения сумм, оплаченных по указанному документу оплаты.
Параметры:
- iRegionID, iPayoutDocID - ключ документа оплаты сумм;
- dReceiptDate - задаваемая дата получения;
- iUpdateExisting - обновлять ли дату суммам, для которых она уже задана (0/1);
- iAudOriginID - ID источника события для аудита;
- sAudNotes - примечания для аудита;
- iAudMassOpID - ID записи аудита массовой операции.
Возвращает количество назначений, для которых была задана дата получения сумм.
Оплата сумм через разовое поручение
CloseOccasionalOrder
FUNCTION CloseOccasionalOrder( iRegionID PLS_INTEGER, iAssignedID PLS_INTEGER, iPayeeID PLS_INTEGER, iBasePWayRgnID PLS_INTEGER, iBasePWayID PLS_INTEGER, iPWDocID PLS_INTEGER, iCityID PLS_INTEGER, iStreetID PLS_INTEGER, sBldg VARCHAR2, sBulk VARCHAR2, sApt VARCHAR2, iAgentRgnID PLS_INTEGER, iAgentID PLS_INTEGER, Amounts uszn.TPayingAmountInfoList, dDocDate DATE, iDocNumber PLS_INTEGER, sDocNotes VARCHAR2, iAudOriginID PLS_INTEGER, sAudNotes VARCHAR2 := NULL, iAudMassOpID PLS_INTEGER := NULL, dDispatchDate DATE := NULL, dReceiptDate DATE := NULL) RETURN PLS_INTEGER;
Описание
Выполняет частичную оплату сумм по указанному назначению. Суммы оплачиваются по указанному способу выплаты.
Параметры:
- iRegionID, iAssignedID - ключ назначения;
- iPayeeID - ID получателя;
- iBasePWayRgnID, iBasePWayID - ключ базового способа выплаты;
- iPWDocID - ID персонального документа с параметрами выплаты (счёта в банке etc.);
- iCityID - адрес: ID населённого пункта;
- iStreetID - адрес: ID улицы;
- sBldg, sBulk, sApt - адрес: дом, корпус, квартира;
- iAgentRgnID, iAgentID - ключ агента, через которого осуществляется выплата;
- Amounts - список ID сумм, подлежащих оплате;
- dDocDate - дата документа оплаты;
- iDocNumber - номер документа оплаты;
- sDocNotes - примечания к документу оплаты;
- iAudOriginID - ID источника события для аудита;
- sAudNotes - примечания к аудиту;
- iAudMassOpID - ID записи аудита массовой операции;
- dDispatchDate - дата отправки сведений для оплаты в платёжную организацию;
- dReceiptDate - дата получения получателем.
Возвращает ID созданного документа оплаты сумм (разового поручения).
Возврат сумм через приходный кассовый ордер
CloseIncomingCashOrder
FUNCTION CloseIncomingCashOrder( iRegionID PLS_INTEGER, iDeductionID PLS_INTEGER, nTotalAmount NUMBER, Conditions IN TDeductionConditionList, Periods IN uszn.TDateList, iStatusID PLS_INTEGER, iPayeeID PLS_INTEGER, iBasePWayRgnID PLS_INTEGER, iBasePWayID PLS_INTEGER, iPWDocID PLS_INTEGER, iCityID PLS_INTEGER, iStreetID PLS_INTEGER, sBldg VARCHAR2, sBulk VARCHAR2, sApt VARCHAR2, iAgentRgnID PLS_INTEGER, iAgentID PLS_INTEGER, dDocDate DATE, iDocNumber PLS_INTEGER, sDocNotes VARCHAR2, iAudOriginID PLS_INTEGER, sAudNotes VARCHAR2 := NULL, iAudMassOpID PLS_INTEGER := NULL) RETURN PLS_INTEGER;
Описание
Выполняет возврат сумм переплаты по указанному удержанию.
Параметры:
- iRegionID, iDeductionID - ключ удержания, по которому осуществляется возврат сумм;
- nTotalAmount - общая возвращаемая сумма;
- Conditions - список условий, накладываемых на суммы, подлежащие возврату; если список пустой: • для удержания переплаты возврату подлежат только суммы по предмету назначения и источнику финансирования, по которым возникла переплата; • для прочих видов удержаний возврату подлежат любые оплаченные суммы;
- Periods - список периодов выплаты, суммы которых можно возвращать; если список пустой, возвращаются суммы за любой период (обрабатываются в порядке убывания даты периода);
- iStatusID - ID состояния, присваемого возвращаемым суммам;
- iPayeeID - ID плательщика (записывается в качестве «получателя» возвращаемых сумм);
- iBasePWayRgnID, iBasePWayID - ключ базового способа выплаты;
- iPWDocID, iCityID, iStreetID, sBldg, sBulk, sApt - выплатные реквизиты (документ с выплатными реквизитами и адрес доставки);
- iAgentRgnID, iAgentID - ключ агента, через которого осуществляется возврат (null, если не используется);
- dDocDate - дата приходного кассового ордера;
- iDocNumber - номер приходного кассового ордера;
- sDocNotes - примечания к приходному кассовому ордеру;
- iAudOriginID - ID источника события для аудита;
- sAudNotes - примечания для записи аудита;
- iAudMassOpID - ID записи аудита массовой операции (null, если не используется).
Возвращает ID созданного приходного кассового ордера.
Если по указанному назначению с заданными условиями не удаётся вернуть требуемую сумму, возникает exception.
Выдача ТМЦ / оказание услуг
CreateDecisionDoc
FUNCTION CreateDecisionDoc( iRegionID PLS_INTEGER, iAssignedID PLS_INTEGER, iOrgRgnID PLS_INTEGER, iOrgID PLS_INTEGER, dDocDate DATE, iDocNumber PLS_INTEGER, sDocNotes VARCHAR2, iDocKindID PLS_INTEGER, iAudOriginID PLS_INTEGER, sAudNotes VARCHAR2 := NULL, iAudMassOpID PLS_INTEGER := NULL) RETURN PLS_INTEGER;
Описание
Создаёт решение о выдаче ТМЦ / оказании услуг для указанного назначения.
Параметры:
- iRegionID, iAssignedID - ключ назначения;
- iOrgRgnID, iOrgID - ключ организации, выпускающей документ;
- dDocDate - дата документа;
- iDocNumber - номер документа
- sDocNotes - примечания к документу;
- iDocKindID - ID вида документа оплаты сумм; константа из числа IDocKindID_xxx; вид документа должен иметь is_decision_doc=1;
- iAudOriginID - ID источника события для аудита;
- sAudNotes - примечания для записи аудита;
- iAudMassOpID - ID записи аудита массовой операции (null, если не используется).
Возвращает ID созданного документа.
Decision_UpdateStatistics
PROCEDURE Decision_UpdateStatistics(iRegionID PLS_INTEGER, iID PLS_INTEGER);
Описание
Вычисляет и записывает в решение данные по суммам и количествам назначений и получателей.
CloseGiveOutAct
FUNCTION CloseGiveOutAct( iRegionID PLS_INTEGER, iAssignedID PLS_INTEGER, iOrgRgnID PLS_INTEGER, iOrgID PLS_INTEGER, iEmployeeID PLS_INTEGER, iPayeeID PLS_INTEGER, iBasePWayRgnID PLS_INTEGER, iBasePWayID PLS_INTEGER, iPWDocID PLS_INTEGER, iCityID PLS_INTEGER, iStreetID PLS_INTEGER, sBldg VARCHAR2, sBulk VARCHAR2, sApt VARCHAR2, iAgentRgnID PLS_INTEGER, iAgentID PLS_INTEGER, POItemIDs uszn.TIntegerList, dDocDate DATE, iDocNumber PLS_INTEGER, sDocNotes VARCHAR2, iDocKindID PLS_INTEGER, iAudOriginID PLS_INTEGER, sAudNotes VARCHAR2 := NULL, iAudMassOpID PLS_INTEGER := NULL) RETURN PLS_INTEGER;
Описание
Выполняет оплату сумм по указанному назначению путём формирования акта выдачи ТМЦ.
Суммы оплачиваются по указанному способу выплаты.
Параметры:
- iRegionID, iAssignedID - ключ назначения;
- iOrgRgnID, iOrgID - ключ организации, выпускающей документ;
- iEmployeeID - ID специалиста, осуществляющего выдачу;
- iPayeeID - ID получателя;
- iBasePWayRgnID, iBasePWayID - ключ базового способа выплаты;
- iPWDocID - ID персонального документа с параметрами выплаты (счёта в банке etc.);
- iCityID - адрес: ID населённого пункта;
- iStreetID - адрес: ID улицы;
- sBldg, sBulk, sApt - адрес: дом, корпус, квартира;
- iAgentRgnID, iAgentID - ключ агента, через которого осуществляется выплата;
- POItemIDs - список ID выплатных предметов назначения, подлежащих выдаче;
- dDocDate - дата акта выдачи ТМЦ;
- iDocNumber - номер акта выдачи ТМЦ;
- sDocNotes - примечания к акту выдачи ТМЦ;
- iDocKindID - ID вида документа оплаты сумм; константа из числа IDocKindID_xxx; вид документа должен иметь is_give_out_doc=1;
- iAudOriginID - ID источника события для аудита;
- sAudNotes - примечания к аудиту;
- iAudMassOpID - ID записи аудита массовой операции.
Возвращает ID созданного документа оплаты сумм (акта выдачи ТМЦ).
CloseGiveOutDenial
FUNCTION CloseGiveOutDenial( iRegionID PLS_INTEGER, iAssignedID PLS_INTEGER, iOrgRgnID PLS_INTEGER, iOrgID PLS_INTEGER, POItemIDs uszn.TIntegerList, iNewStatusID PLS_INTEGER, dDocDate DATE, iDocNumber PLS_INTEGER, sDocNotes VARCHAR2, iDocKindID PLS_INTEGER, iAudOriginID PLS_INTEGER, sAudNotes VARCHAR2 := NULL, iAudMassOpID PLS_INTEGER := NULL) RETURN PLS_INTEGER;
Описание
Переводит суммы по указанному назначению в состояние путём формирования решения об отказе в выдаче ТМЦ.
Параметры:
- iRegionID, iAssignedID - ключ назначения;
- iOrgRgnID, iOrgID - ключ организации, выпускающей документ;
- POItemIDs - список ID выплатных предметов назначения, по которым оформляется отказ в выдаче;
- dDocDate - дата решения;
- iDocNumber - номер решения;
- sDocNotes - примечания к решению;
- iDocKindID - ID вида документа оплаты сумм; константа из числа IDocKindID_xxx; вид документа должен иметь is_give_out_doc=1 и is_denial=1;
- iAudOriginID - ID источника события для аудита;
- sAudNotes - примечания к аудиту;
- iAudMassOpID - ID записи аудита массовой операции.
Возвращает ID созданного документа оплаты сумм (решения об отказе в выдаче ТМЦ).
Работа с временной таблицей документов об оплате сумм R$_SELECTED_PAYOUT_DOCS
SelectPayoutDocs
PROCEDURE SelectPayoutDocs(PayoutDocRKeys IN uszn.TRgnKeyList, iResetSelection PLS_INTEGER := 1);
Описание
Выбирает ключи перечисленных документов об оплате сумм в r$_selected_payout_docs.
- iResetSelection - очистить таблицу перед выборкой (0 = добавлять к уже выбранному).
AnalyzeSelectedPayoutDocs
PROCEDURE AnalyzeSelectedPayoutDocs;
Описание
Собирает статистику по таблице r$_selected_payout_docs.
Разное
LoadPKindsInfo
FUNCTION LoadPKindsInfo(iRegionID PLS_INTEGER, sKeyList VARCHAR2) RETURN TPKindInfoList;
Описание
Загружает и возвращает информацию по перечисленным видам выплат в указанном районе.
Виды выплат перечисляются в sKeyList в следующем виде:
- (id1,region_id1),(id2,region_id2).....
LoadPKindsInfo
FUNCTION LoadPKindsInfo(iRegionID PLS_INTEGER, iPKindRgnID PLS_INTEGER, iPKindID PLS_INTEGER) RETURN TPKindInfoList;
Описание
Загружает и возвращает в виде списка из одного элемента информацию по указанному виду выплаты.
CheckPKindsInfo
PROCEDURE CheckPKindsInfo(iRegionID PLS_INTEGER, PKinds IN TPKindInfoList, iCheckRepDate PLS_INTEGER := 1, iCheckPriv PLS_INTEGER := NULL);
Описание
Проверяет информацию о видах выплат: iCheckRepDate - проверять ли наличие отчётной даты (1 - да, 0 - нет) iCheckPriv - проверяемые привилегии (null - не проверять).