Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
I
import
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Iterations
Wiki
Requirements
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Container registry
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
lib
unicaen
import
Commits
eb8c969d
Commit
eb8c969d
authored
9 years ago
by
Laurent Lecluse
Browse files
Options
Downloads
Patches
Plain Diff
Ajout du script d'initialisation dans le répertoire data
parent
95502245
No related branches found
No related tags found
No related merge requests found
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
data/module.sql
+114
-0
114 additions, 0 deletions
data/module.sql
src/UnicaenImport/Service/AbstractService.php
+1
-1
1 addition, 1 deletion
src/UnicaenImport/Service/AbstractService.php
with
115 additions
and
1 deletion
data/module.sql
0 → 100644
+
114
−
0
View file @
eb8c969d
CREATE
TABLE
SYNC_LOG
(
ID
NUMBER
(
*
,
0
)
NOT
NULL
,
DATE_SYNC
TIMESTAMP
(
6
)
NOT
NULL
,
MESSAGE
CLOB
NOT
NULL
,
TABLE_NAME
VARCHAR2
(
30
CHAR
)
,
SOURCE_CODE
VARCHAR2
(
200
CHAR
)
,
CONSTRAINT
SYNC_LOG_PK
PRIMARY
KEY
(
ID
)
USING
INDEX
(
CREATE
UNIQUE
INDEX
SYNC_LOG_PK
ON
SYNC_LOG
(
ID
ASC
))
ENABLE
);
/
create
or
replace
PACKAGE
UNICAEN_IMPORT
AS
PROCEDURE
set_current_user
(
p_current_user
IN
INTEGER
);
FUNCTION
get_current_user
return
INTEGER
;
FUNCTION
get_current_annee
RETURN
INTEGER
;
PROCEDURE
set_current_annee
(
p_current_annee
INTEGER
);
FUNCTION
get_sql_criterion
(
table_name
varchar2
,
sql_criterion
VARCHAR2
)
RETURN
CLOB
;
PROCEDURE
SYNC_LOG
(
message
CLOB
,
table_name
VARCHAR2
DEFAULT
NULL
,
source_code
VARCHAR2
DEFAULT
NULL
);
-- AUTOMATIC GENERATION --
-- END OF AUTOMATIC GENERATION --
END
UNICAEN_IMPORT
;
/
create
or
replace
PACKAGE
BODY
UNICAEN_IMPORT
AS
v_current_user
INTEGER
;
v_current_annee
INTEGER
;
FUNCTION
get_current_user
RETURN
INTEGER
IS
BEGIN
IF
v_current_user
IS
NULL
THEN
v_current_user
:
=
NULL
;
-- A remplacer par l'utilisateur (ID de la table USER) qui sera le créateur ou le modificateur des données
END
IF
;
RETURN
v_current_user
;
END
get_current_user
;
PROCEDURE
set_current_user
(
p_current_user
INTEGER
)
is
BEGIN
v_current_user
:
=
p_current_user
;
END
set_current_user
;
FUNCTION
get_current_annee
RETURN
INTEGER
IS
BEGIN
IF
v_current_annee
IS
NULL
THEN
v_current_annee
:
=
NULL
;
-- A remplacer par l'année d'import souhaitée (si vous avez de l'annualisation de prévue dans votre BDD)
END
IF
;
RETURN
v_current_annee
;
END
get_current_annee
;
PROCEDURE
set_current_annee
(
p_current_annee
INTEGER
)
IS
BEGIN
v_current_annee
:
=
p_current_annee
;
END
set_current_annee
;
FUNCTION
get_sql_criterion
(
table_name
varchar2
,
sql_criterion
VARCHAR2
)
RETURN
CLOB
IS
BEGIN
IF
sql_criterion
<>
''
OR
sql_criterion
IS
NOT
NULL
THEN
RETURN
sql_criterion
;
END
IF
;
RETURN
''
;
/* Exemple d'usage :
RETURN CASE table_name
WHEN 'INTERVENANT' THEN -- Met à jour toutes les données sauf le statut, qui sera traité à part
'WHERE IMPORT_ACTION IN (''delete'',''update'',''undelete'')'
WHEN 'AFFECTATION_RECHERCHE' THEN
'WHERE INTERVENANT_ID IS NOT NULL'
WHEN 'ADRESSE_INTERVENANT' THEN
'WHERE INTERVENANT_ID IS NOT NULL'
WHEN 'ELEMENT_TAUX_REGIMES' THEN
'WHERE IMPORT_ACTION IN (''delete'',''insert'',''undelete'')'
ELSE
''
END;*/
END
;
PROCEDURE
SYNC_LOG
(
message
CLOB
,
table_name
VARCHAR2
DEFAULT
NULL
,
source_code
VARCHAR2
DEFAULT
NULL
)
IS
BEGIN
INSERT
INTO
OSE
.
SYNC_LOG
(
"ID"
,
"DATE_SYNC"
,
"MESSAGE"
,
"TABLE_NAME"
,
"SOURCE_CODE"
)
VALUES
(
SYNC_LOG_ID_SEQ
.
NEXTVAL
,
SYSDATE
,
message
,
table_name
,
source_code
);
END
SYNC_LOG
;
FUNCTION
IN_COLUMN_LIST
(
VALEUR
VARCHAR2
,
CHAMPS
CLOB
)
RETURN
NUMERIC
IS
BEGIN
IF
REGEXP_LIKE
(
CHAMPS
,
'(^|,)[
\t\r\n\v\f
]*'
||
VALEUR
||
'[
\t\r\n\v\f
]*(,|$)'
)
THEN
RETURN
1
;
END
IF
;
RETURN
0
;
END
;
-- AUTOMATIC GENERATION --
-- END OF AUTOMATIC GENERATION --
END
UNICAEN_IMPORT
;
\ No newline at end of file
This diff is collapsed.
Click to expand it.
src/UnicaenImport/Service/AbstractService.php
+
1
−
1
View file @
eb8c969d
...
...
@@ -68,7 +68,7 @@ class AbstractService implements ServiceLocatorAwareInterface, EntityManagerAwar
case
'double'
:
return
(
string
)
$value
;
case
'array'
:
return
'('
.
implode
(
','
,
array_map
(
'Import\Service\Service
::escape'
,
$value
))
.
')'
;
return
'('
.
implode
(
','
,
array_map
(
__class__
.
'
::escape'
,
$value
))
.
')'
;
}
throw
new
Exception
(
'La valeur transmise ne peut pas être convertie en SQL'
);
}
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment