Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
open-source
OSE
Commits
175883b8
Commit
175883b8
authored
Apr 09, 2021
by
Laurent Lécluse
Browse files
Finalisation AA/AC
parent
63271084
Changes
7
Hide whitespace changes
Inline
Side-by-side
data/ddl/package/OSE_DIVERS/body.sql
View file @
175883b8
...
...
@@ -64,9 +64,6 @@ CREATE OR REPLACE PACKAGE BODY "OSE_DIVERS" AS
RETURN
1
;
END
IF
;
ose_test
.
echo
(
'nbjaa='
||
nbjaa
);
ose_test
.
echo
(
'nbjac='
||
nbjac
);
RETURN
ROUND
(
nbjaa
/
(
nbjaa
+
nbjac
),
2
);
END
IF
;
END
IF
;
...
...
data/ddl/package/OSE_PARAMETRE/body.sql
View file @
175883b8
CREATE
OR
REPLACE
PACKAGE
BODY
"OSE_PARAMETRE"
AS
cache_ose_user
NUMERIC
;
cache_annee_id
NUMERIC
;
oseuser
NUMERIC
;
annee
NUMERIC
;
annee_import
NUMERIC
;
etablissement
VARCHAR2
(
50
);
regle_paiement_annee_civile
VARCHAR2
(
50
);
pourc_s1_pour_annee_civile
FLOAT
;
...
...
@@ -10,19 +13,22 @@ CREATE OR REPLACE PACKAGE BODY "OSE_PARAMETRE" AS
FUNCTION
get_etablissement
return
Numeric
AS
etab_id
numeric
;
BEGIN
select
to_number
(
valeur
)
into
etab_id
from
parametre
where
nom
=
'etablissement'
;
RETURN
etab_id
;
IF
etablissement
IS
NULL
THEN
select
to_number
(
valeur
)
into
etablissement
from
parametre
where
nom
=
'etablissement'
;
END
IF
;
RETURN
etablissement
;
END
get_etablissement
;
FUNCTION
get_annee
return
Numeric
AS
annee_id
numeric
;
BEGIN
IF
cache_annee_id
IS
NOT
NULL
THEN
RETURN
cache_annee_id
;
END
IF
;
select
to_number
(
valeur
)
into
annee_id
from
parametre
where
nom
=
'annee'
;
cache_annee_id
:
=
annee_id
;
RETURN
cache_annee_id
;
IF
annee
IS
NULL
THEN
SELECT
to_number
(
valeur
)
into
annee
from
parametre
where
nom
=
'annee'
;
END
IF
;
RETURN
annee
;
END
get_annee
;
...
...
@@ -30,19 +36,22 @@ CREATE OR REPLACE PACKAGE BODY "OSE_PARAMETRE" AS
FUNCTION
get_annee_import
RETURN
NUMERIC
AS
annee_id
NUMERIC
;
BEGIN
SELECT
to_number
(
valeur
)
INTO
annee_id
FROM
parametre
WHERE
nom
=
'annee_import'
;
RETURN
annee_id
;
IF
annee_import
IS
NULL
THEN
SELECT
to_number
(
valeur
)
INTO
annee_import
FROM
parametre
WHERE
nom
=
'annee_import'
;
END
IF
;
RETURN
annee_import
;
END
get_annee_import
;
FUNCTION
get_ose_user
return
NUMERIC
AS
ose_user_id
numeric
;
BEGIN
IF
cache_ose_user
IS
NOT
NULL
THEN
RETURN
cache_ose_user
;
END
IF
;
select
to_number
(
valeur
)
into
ose_user_id
from
parametre
where
nom
=
'oseuser'
;
cache_ose_user
:
=
ose_user_id
;
RETURN
cache_ose_user
;
IF
oseuser
IS
NULL
THEN
SELECT
to_number
(
valeur
)
into
oseuser
from
parametre
where
nom
=
'oseuser'
;
END
IF
;
RETURN
oseuser
;
END
get_ose_user
;
...
...
@@ -56,6 +65,7 @@ CREATE OR REPLACE PACKAGE BODY "OSE_PARAMETRE" AS
formule
f
JOIN
parametre
p
ON
f
.
id
=
to_number
(
p
.
valeur
)
WHERE
p
.
nom
=
'formule'
;
RETURN
fdata
;
END
;
...
...
@@ -81,4 +91,13 @@ CREATE OR REPLACE PACKAGE BODY "OSE_PARAMETRE" AS
RETURN
pourc_s1_pour_annee_civile
;
END
;
PROCEDURE
CLEAR_CACHE
IS
BEGIN
annee
:
=
NULL
;
oseuser
:
=
NULL
;
regle_paiement_annee_civile
:
=
NULL
;
pourc_s1_pour_annee_civile
:
=
NULL
;
END
;
END
OSE_PARAMETRE
;
\ No newline at end of file
data/ddl/package/OSE_PARAMETRE/definition.sql
View file @
175883b8
...
...
@@ -8,4 +8,6 @@ CREATE OR REPLACE PACKAGE "OSE_PARAMETRE" AS
FUNCTION
get_regle_paiement_annee_civ
RETURN
VARCHAR2
;
FUNCTION
get_pourc_s1_annee_civ
RETURN
VARCHAR2
;
PROCEDURE
CLEAR_CACHE
;
END
OSE_PARAMETRE
;
\ No newline at end of file
data/ddl/package/UNICAEN_TBL/body.sql
View file @
175883b8
...
...
@@ -1186,8 +1186,8 @@ CREATE OR REPLACE PACKAGE BODY "UNICAEN_TBL" AS
count(*) OVER(PARTITION BY frs.id) heures_a_payer_pond,
NVL(mep.heures,0) heures_demandees,
CASE WHEN mep.periode_paiement_id IS NULL THEN 0 ELSE mep.heures END heures_payees,
4 / 10
pourc_exercice_aa,
6 / 10
pourc_exercice_ac
pea.pourc_exercice_aa
pourc_exercice_aa,
1 - pea.pourc_exercice_aa
pourc_exercice_ac
FROM
formule_resultat_service frs
JOIN type_volume_horaire tvh ON tvh.code =
''
REALISE
''
...
...
@@ -1199,6 +1199,24 @@ CREATE OR REPLACE PACKAGE BODY "UNICAEN_TBL" AS
JOIN intervenant i ON i.id = fr.intervenant_id /*@INTERVENANT_ID=i.id*/ /*@ANNEE_ID=a.annee_id*/
JOIN service s ON s.id = frs.service_id
JOIN (
SELECT
frvh.formule_resultat_id,
vh.service_id,
CASE WHEN SUM(vh.heures) > 0 THEN
SUM(ose_divers.CALC_POURC_AA(vh.periode_id, vh.horaire_debut, vh.horaire_fin, i.annee_id) * vh.heures) / SUM(vh.heures)
ELSE
SUM(ose_divers.CALC_POURC_AA(vh.periode_id, vh.horaire_debut, vh.horaire_fin, i.annee_id))
END pourc_exercice_aa
FROM
volume_horaire vh
JOIN service s ON s.id = vh.service_id
JOIN intervenant i ON i.id = s.intervenant_id /*@INTERVENANT_ID=i.id*/ /*@ANNEE_ID=a.annee_id*/
JOIN formule_resultat_vh frvh ON frvh.volume_horaire_id = vh.id
GROUP BY
frvh.formule_resultat_id,
vh.service_id
) pea ON pea.formule_resultat_id = fr.id AND pea.service_id = s.id
LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id
LEFT JOIN etape e ON e.id = ep.etape_id
LEFT JOIN mise_en_paiement mep ON mep.formule_res_service_id = frs.id
...
...
@@ -1221,8 +1239,8 @@ CREATE OR REPLACE PACKAGE BODY "UNICAEN_TBL" AS
count(*) OVER(PARTITION BY frs.id) heures_a_payer_pond,
NVL(mep.heures,0) heures_demandees,
CASE WHEN mep.periode_paiement_id IS NULL THEN 0 ELSE mep.heures END heures_payees,
4 / 10
pourc_exercice_aa,
6 / 10
pourc_exercice_ac
pea.pourc_exercice_aa
pourc_exercice_aa,
1 - pea.pourc_exercice_aa
pourc_exercice_ac
FROM
formule_resultat_service_ref frs
JOIN type_volume_horaire tvh ON tvh.code =
''
REALISE
''
...
...
@@ -1233,6 +1251,24 @@ CREATE OR REPLACE PACKAGE BODY "UNICAEN_TBL" AS
JOIN intervenant i ON i.id = fr.intervenant_id /*@INTERVENANT_ID=i.id*/ /*@ANNEE_ID=a.annee_id*/
JOIN service_referentiel sr ON sr.id = frs.service_referentiel_id
JOIN (
SELECT
frvhr.formule_resultat_id,
vhr.service_referentiel_id,
CASE WHEN SUM(vhr.heures) > 0 THEN
SUM(ose_divers.CALC_POURC_AA(NULL, vhr.horaire_debut, vhr.horaire_fin, i.annee_id) * vhr.heures) / SUM(vhr.heures)
ELSE
SUM(ose_divers.CALC_POURC_AA(NULL, vhr.horaire_debut, vhr.horaire_fin, i.annee_id))
END pourc_exercice_aa
FROM
volume_horaire_ref vhr
JOIN service_referentiel sr ON sr.id = vhr.service_referentiel_id
JOIN intervenant i ON i.id = sr.intervenant_id /*@INTERVENANT_ID=i.id*/ /*@ANNEE_ID=a.annee_id*/
JOIN formule_resultat_vh_ref frvhr ON frvhr.volume_horaire_ref_id = vhr.id
GROUP BY
frvhr.formule_resultat_id,
vhr.service_referentiel_id
) pea ON pea.formule_resultat_id = fr.id AND pea.service_referentiel_id = sr.id
JOIN fonction_referentiel fncr ON fncr.id = sr.fonction_id
LEFT JOIN mise_en_paiement mep ON mep.formule_res_service_ref_id = frs.id
AND mep.histo_destruction IS NULL'
;
...
...
data/ddl/trigger/PARAMETRE_S.sql
0 → 100644
View file @
175883b8
CREATE
OR
REPLACE
TRIGGER
"PARAMETRE_S"
AFTER
UPDATE
ON
PARAMETRE
FOR
EACH
ROW
BEGIN
ose_parametre
.
clear_cache
;
END
;
\ No newline at end of file
data/ddl/view/V_TBL_PAIEMENT.sql
View file @
175883b8
...
...
@@ -14,8 +14,8 @@ SELECT
count
(
*
)
OVER
(
PARTITION
BY
frs
.
id
)
heures_a_payer_pond
,
NVL
(
mep
.
heures
,
0
)
heures_demandees
,
CASE
WHEN
mep
.
periode_paiement_id
IS
NULL
THEN
0
ELSE
mep
.
heures
END
heures_payees
,
4
/
10
pourc_exercice_aa
,
6
/
10
pourc_exercice_ac
pea
.
pourc_exercice_aa
pourc_exercice_aa
,
1
-
pea
.
pourc_exercice_aa
pourc_exercice_ac
FROM
formule_resultat_service
frs
JOIN
type_volume_horaire
tvh
ON
tvh
.
code
=
'REALISE'
...
...
@@ -27,6 +27,24 @@ FROM
JOIN
intervenant
i
ON
i
.
id
=
fr
.
intervenant_id
/*@INTERVENANT_ID=i.id*/
/*@ANNEE_ID=a.annee_id*/
JOIN
service
s
ON
s
.
id
=
frs
.
service_id
JOIN
(
SELECT
frvh
.
formule_resultat_id
,
vh
.
service_id
,
CASE
WHEN
SUM
(
vh
.
heures
)
>
0
THEN
SUM
(
ose_divers
.
CALC_POURC_AA
(
vh
.
periode_id
,
vh
.
horaire_debut
,
vh
.
horaire_fin
,
i
.
annee_id
)
*
vh
.
heures
)
/
SUM
(
vh
.
heures
)
ELSE
SUM
(
ose_divers
.
CALC_POURC_AA
(
vh
.
periode_id
,
vh
.
horaire_debut
,
vh
.
horaire_fin
,
i
.
annee_id
))
END
pourc_exercice_aa
FROM
volume_horaire
vh
JOIN
service
s
ON
s
.
id
=
vh
.
service_id
JOIN
intervenant
i
ON
i
.
id
=
s
.
intervenant_id
/*@INTERVENANT_ID=i.id*/
/*@ANNEE_ID=a.annee_id*/
JOIN
formule_resultat_vh
frvh
ON
frvh
.
volume_horaire_id
=
vh
.
id
GROUP
BY
frvh
.
formule_resultat_id
,
vh
.
service_id
)
pea
ON
pea
.
formule_resultat_id
=
fr
.
id
AND
pea
.
service_id
=
s
.
id
LEFT
JOIN
element_pedagogique
ep
ON
ep
.
id
=
s
.
element_pedagogique_id
LEFT
JOIN
etape
e
ON
e
.
id
=
ep
.
etape_id
LEFT
JOIN
mise_en_paiement
mep
ON
mep
.
formule_res_service_id
=
frs
.
id
...
...
@@ -49,8 +67,8 @@ SELECT
count
(
*
)
OVER
(
PARTITION
BY
frs
.
id
)
heures_a_payer_pond
,
NVL
(
mep
.
heures
,
0
)
heures_demandees
,
CASE
WHEN
mep
.
periode_paiement_id
IS
NULL
THEN
0
ELSE
mep
.
heures
END
heures_payees
,
4
/
10
pourc_exercice_aa
,
6
/
10
pourc_exercice_ac
pea
.
pourc_exercice_aa
pourc_exercice_aa
,
1
-
pea
.
pourc_exercice_aa
pourc_exercice_ac
FROM
formule_resultat_service_ref
frs
JOIN
type_volume_horaire
tvh
ON
tvh
.
code
=
'REALISE'
...
...
@@ -61,6 +79,24 @@ FROM
JOIN
intervenant
i
ON
i
.
id
=
fr
.
intervenant_id
/*@INTERVENANT_ID=i.id*/
/*@ANNEE_ID=a.annee_id*/
JOIN
service_referentiel
sr
ON
sr
.
id
=
frs
.
service_referentiel_id
JOIN
(
SELECT
frvhr
.
formule_resultat_id
,
vhr
.
service_referentiel_id
,
CASE
WHEN
SUM
(
vhr
.
heures
)
>
0
THEN
SUM
(
ose_divers
.
CALC_POURC_AA
(
NULL
,
vhr
.
horaire_debut
,
vhr
.
horaire_fin
,
i
.
annee_id
)
*
vhr
.
heures
)
/
SUM
(
vhr
.
heures
)
ELSE
SUM
(
ose_divers
.
CALC_POURC_AA
(
NULL
,
vhr
.
horaire_debut
,
vhr
.
horaire_fin
,
i
.
annee_id
))
END
pourc_exercice_aa
FROM
volume_horaire_ref
vhr
JOIN
service_referentiel
sr
ON
sr
.
id
=
vhr
.
service_referentiel_id
JOIN
intervenant
i
ON
i
.
id
=
sr
.
intervenant_id
/*@INTERVENANT_ID=i.id*/
/*@ANNEE_ID=a.annee_id*/
JOIN
formule_resultat_vh_ref
frvhr
ON
frvhr
.
volume_horaire_ref_id
=
vhr
.
id
GROUP
BY
frvhr
.
formule_resultat_id
,
vhr
.
service_referentiel_id
)
pea
ON
pea
.
formule_resultat_id
=
fr
.
id
AND
pea
.
service_referentiel_id
=
sr
.
id
JOIN
fonction_referentiel
fncr
ON
fncr
.
id
=
sr
.
fonction_id
LEFT
JOIN
mise_en_paiement
mep
ON
mep
.
formule_res_service_ref_id
=
frs
.
id
AND
mep
.
histo_destruction
IS
NULL
\ No newline at end of file
data/ddl_config.php
View file @
175883b8
...
...
@@ -15,7 +15,7 @@ return [
],
'excludes'
=>
[
'MV_EXT_SERVICE'
]],
'view'
=>
[
'includes'
=>
[
'V_INDIC_DIFF_DOSSIER'
,
'V_MEP_INTERVENANT_STRUCTURE'
,
]],
'package'
=>
[
'includes'
=>
[
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment