926: l_end_date date;
927: l_end_date_disp varchar2(40);
928: BEGIN
929: if(p_stub_days is not null and p_stub_days <> OKL_API.G_MISS_CHAR) then -- end date for stub entry.
930: l_end_date := FND_DATE.canonical_to_date(p_start_date) + to_number(p_stub_days);
931: l_end_date := l_end_date - 1;
932: l_end_date_disp := OKL_LLA_UTIL_PVT.get_display_date(nvl(FND_DATE.date_to_canonical(l_end_date),''));
933: else -- end date for level entry.
934: -- cklee/mvasudev,06-02-2005,Bug#4392051/okl.h 4437938
928: BEGIN
929: if(p_stub_days is not null and p_stub_days <> OKL_API.G_MISS_CHAR) then -- end date for stub entry.
930: l_end_date := FND_DATE.canonical_to_date(p_start_date) + to_number(p_stub_days);
931: l_end_date := l_end_date - 1;
932: l_end_date_disp := OKL_LLA_UTIL_PVT.get_display_date(nvl(FND_DATE.date_to_canonical(l_end_date),''));
933: else -- end date for level entry.
934: -- cklee/mvasudev,06-02-2005,Bug#4392051/okl.h 4437938
935: --l_end_date := get_end_date(FND_DATE.canonical_to_date(p_start_date), p_frequency, TO_NUMBER(NVL(p_period,0)));
936: --l_end_date := get_end_date(FND_DATE.canonical_to_date(p_start_date), p_frequency, TO_NUMBER(NVL(p_period,0)),p_start_day);
931: l_end_date := l_end_date - 1;
932: l_end_date_disp := OKL_LLA_UTIL_PVT.get_display_date(nvl(FND_DATE.date_to_canonical(l_end_date),''));
933: else -- end date for level entry.
934: -- cklee/mvasudev,06-02-2005,Bug#4392051/okl.h 4437938
935: --l_end_date := get_end_date(FND_DATE.canonical_to_date(p_start_date), p_frequency, TO_NUMBER(NVL(p_period,0)));
936: --l_end_date := get_end_date(FND_DATE.canonical_to_date(p_start_date), p_frequency, TO_NUMBER(NVL(p_period,0)),p_start_day);
937:
938: l_end_date := get_end_date(FND_DATE.canonical_to_date(p_start_date), p_frequency, TO_NUMBER(NVL(p_period,0)),p_start_day, p_contract_end_date); --Bug#5441811
939:
932: l_end_date_disp := OKL_LLA_UTIL_PVT.get_display_date(nvl(FND_DATE.date_to_canonical(l_end_date),''));
933: else -- end date for level entry.
934: -- cklee/mvasudev,06-02-2005,Bug#4392051/okl.h 4437938
935: --l_end_date := get_end_date(FND_DATE.canonical_to_date(p_start_date), p_frequency, TO_NUMBER(NVL(p_period,0)));
936: --l_end_date := get_end_date(FND_DATE.canonical_to_date(p_start_date), p_frequency, TO_NUMBER(NVL(p_period,0)),p_start_day);
937:
938: l_end_date := get_end_date(FND_DATE.canonical_to_date(p_start_date), p_frequency, TO_NUMBER(NVL(p_period,0)),p_start_day, p_contract_end_date); --Bug#5441811
939:
940: l_end_date_disp := OKL_LLA_UTIL_PVT.get_display_date(NVL(FND_DATE.date_to_canonical(l_end_date),''));
934: -- cklee/mvasudev,06-02-2005,Bug#4392051/okl.h 4437938
935: --l_end_date := get_end_date(FND_DATE.canonical_to_date(p_start_date), p_frequency, TO_NUMBER(NVL(p_period,0)));
936: --l_end_date := get_end_date(FND_DATE.canonical_to_date(p_start_date), p_frequency, TO_NUMBER(NVL(p_period,0)),p_start_day);
937:
938: l_end_date := get_end_date(FND_DATE.canonical_to_date(p_start_date), p_frequency, TO_NUMBER(NVL(p_period,0)),p_start_day, p_contract_end_date); --Bug#5441811
939:
940: l_end_date_disp := OKL_LLA_UTIL_PVT.get_display_date(NVL(FND_DATE.date_to_canonical(l_end_date),''));
941: end if;
942: return l_end_date_disp;
936: --l_end_date := get_end_date(FND_DATE.canonical_to_date(p_start_date), p_frequency, TO_NUMBER(NVL(p_period,0)),p_start_day);
937:
938: l_end_date := get_end_date(FND_DATE.canonical_to_date(p_start_date), p_frequency, TO_NUMBER(NVL(p_period,0)),p_start_day, p_contract_end_date); --Bug#5441811
939:
940: l_end_date_disp := OKL_LLA_UTIL_PVT.get_display_date(NVL(FND_DATE.date_to_canonical(l_end_date),''));
941: end if;
942: return l_end_date_disp;
943: EXCEPTION
944: WHEN OTHERS THEN
955: RETURN NUMBER
956: IS
957:
958: --Modified cursor for bug 6007644
959: --Added FND_DATE.canonical_to_date(RULE_INFORMATION2)+to_number(RULE_INFORMATION7) to return the recurrence date
960: --Also added FND_DATE.canonical_to_date(rule_information2) to covert the rule_information2 to date format
961: CURSOR l_okl_stub_start_csr
962: IS
963: SELECT MAX(FND_DATE.canonical_to_date(RULE_INFORMATION2)+to_number(RULE_INFORMATION7)) start_date
956: IS
957:
958: --Modified cursor for bug 6007644
959: --Added FND_DATE.canonical_to_date(RULE_INFORMATION2)+to_number(RULE_INFORMATION7) to return the recurrence date
960: --Also added FND_DATE.canonical_to_date(rule_information2) to covert the rule_information2 to date format
961: CURSOR l_okl_stub_start_csr
962: IS
963: SELECT MAX(FND_DATE.canonical_to_date(RULE_INFORMATION2)+to_number(RULE_INFORMATION7)) start_date
964: FROM OKC_RULES_V
959: --Added FND_DATE.canonical_to_date(RULE_INFORMATION2)+to_number(RULE_INFORMATION7) to return the recurrence date
960: --Also added FND_DATE.canonical_to_date(rule_information2) to covert the rule_information2 to date format
961: CURSOR l_okl_stub_start_csr
962: IS
963: SELECT MAX(FND_DATE.canonical_to_date(RULE_INFORMATION2)+to_number(RULE_INFORMATION7)) start_date
964: FROM OKC_RULES_V
965: WHERE rgp_id = p_rgp_id
966: AND dnz_chr_id = p_dnz_chr_id
967: AND object2_id1 = p_slh_id
966: AND dnz_chr_id = p_dnz_chr_id
967: AND object2_id1 = p_slh_id
968: AND id <> p_rule_id
969: AND rule_information_category = 'LASLL' --| 17-Jan-06 cklee Fixed bug#4956483 |
970: AND FND_DATE.canonical_to_date(rule_information2) < FND_DATE.canonical_to_date(p_start_date)
971: AND rule_information7 IS NOT NULL
972: ORDER BY start_date;
973:
974: CURSOR l_okl_chr_start_csr
1062: P_SLH_ID IN VARCHAR2
1063: ) IS
1064: SELECT
1065: SLL.*,
1066: FND_DATE.canonical_to_date(nvl(SLL.RULE_INFORMATION2,null)) START_DATE,
1067: OKL_LA_PAYMENTS_PVT.get_order_sequence(SLL.RULE_INFORMATION1) SEQUENCE
1068: FROM OKC_RULES_B SLL
1069: WHERE
1070: SLL.DNZ_CHR_ID = P_CHR_ID
1137: rule_rec.rule_information7 <> OKL_API.G_MISS_CHAR ) then
1138: l_start_date := l_end_date + 1;
1139: l_end_date := l_start_date + to_number(rule_rec.rule_information7);
1140: l_end_date := l_end_date - 1;
1141: l_rulv_rec.rule_information2 := FND_DATE.date_to_canonical(l_start_date);
1142: l_rulv_rec.id := rule_rec.id;
1143:
1144: -- START: cklee/mvasudev,06-02-2005,Bug#4392051/okl.h 4437938
1145: IF (l_sll_count > 1 ) THEN
1166: rule_rec.rule_information3 <> OKL_API.G_MISS_CHAR ) then
1167: l_start_date := l_end_date + 1;
1168: --l_end_date := get_end_date(l_start_date, rule_rec.OBJECT1_ID1, rule_rec.RULE_INFORMATION3);
1169: l_end_date := get_end_date(l_start_date, rule_rec.OBJECT1_ID1, rule_rec.RULE_INFORMATION3,l_start_day, l_contract_end_date);--Bug#5441811
1170: l_rulv_rec.rule_information2 := FND_DATE.date_to_canonical(l_start_date);
1171: l_rulv_rec.id := rule_rec.id;
1172:
1173: -- Bug# 6438785
1174: -- Added to avoid validating payment end date when this API is called