Skip to content
Snippets Groups Projects
Commit d858729d authored by Bouchaira Neirouz's avatar Bouchaira Neirouz
Browse files

génération données

parent c2853b63
No related branches found
No related tags found
No related merge requests found
No preview for this file type
%% Cell type:code id: tags:
```
``` python
import sqlite3
# Connect to the database
conn = sqlite3.connect('company.db')
# Create a cursor object
cursor = conn.cursor()
print("Connected to company.db")
```
%% Output
Connected to company.db
%% Cell type:code id: tags:
``` python
## Production
from datetime import datetime, timedelta
# Fetch all employees
cursor.execute("SELECT NUMERO_EMPLOYE, CS_PRODUCTION,CS_JOURNEE, DATE_DEBUT FROM EMPLOYE")
employees = cursor.fetchall()
cursor.execute("SELECT MAX(NUM_LOG_JOUR_PROD) FROM LOG_JOURNEE_PROD")
last_log_num_prod = cursor.fetchone()[0] or 0
cursor.execute("SELECT MAX(NUM_LOG_JOUR_JOUR) FROM LOG_JOURNEE_JOUR")
last_log_num_jour = cursor.fetchone()[0] or 0
# Loop through each employee
for employee in employees:
NUMERO_EMPLOYE, CS_PRODUCTION,CS_JOURNEE, DATE_DEBUT = employee
start_date = datetime.strptime(DATE_DEBUT, '%Y-%m-%d')
end_date = datetime.today()
delta = end_date - start_date
if CS_JOURNEE is not None:
cursor.execute(f"SELECT DEBUT_SAMEDI FROM GRILLE_SALAIRE_HORAIRE WHERE CS_HORAIRE = {CS_JOURNEE}")
debut_samedi = cursor.fetchone()[0]
for i in range(delta.days + 1):
datei = start_date + timedelta(days=i)
week_day = datei.weekday()
if week_day == 6:
continue
if week_day == 5:
last_log_num_jour += 1
cursor.execute("""
INSERT INTO LOG_JOURNEE_JOUR (NUM_LOG_JOUR_JOUR, DATE,WEEK_DAY, NUMERO_EMPLOYE,HEURE_ARRIVEE, HEURE_FIN, NB_HEURES,NB_HEURES_SUP, RETARD)
VALUES (?, ?, ?,?, ?, ?, ?,?,?)""",(last_log_num_jour, datei.strftime('%Y-%m-%d'),week_day, NUMERO_EMPLOYE,str(debut_samedi)+':00',str(debut_samedi+3)+':00',3,0, False ) )
else:
last_log_num_jour += 1
cursor.execute("""
INSERT INTO LOG_JOURNEE_JOUR (NUM_LOG_JOUR_JOUR, DATE,WEEK_DAY, NUMERO_EMPLOYE,HEURE_ARRIVEE, HEURE_FIN, NB_HEURES,NB_HEURES_SUP, RETARD)
VALUES (?, ?, ?,?, ?, ?, ?,?,?)""",(last_log_num_jour, datei.strftime('%Y-%m-%d'),week_day, NUMERO_EMPLOYE,str(8)+':00',str(debut_samedi+9)+':00',9,0, False ) )
if CS_PRODUCTION is not None:
cursor.execute(f"SELECT PIECE_JOUR , DEBUT_SAMEDI FROM GRILLE_SALAIRE_PROD WHERE CS_PRODUCTION = {CS_PRODUCTION}")
piece_jour,debut_samedi = cursor.fetchone()
for i in range(delta.days + 1):
datei = start_date + timedelta(days=i)
week_day = datei.weekday()
if week_day == 6:
continue
if week_day == 5:
last_log_num_prod += 1
cursor.execute("""
INSERT INTO LOG_JOURNEE_PROD (NUM_LOG_JOUR_PROD, DATE,WEEK_DAY, NUMERO_EMPLOYE,NB_PIECES,NB_PIECES_SUP,HEURE_ARRIVEE,RETARD)
VALUES (?, ?, ?,?, ?, ?, ?,?)
""", (last_log_num_prod, datei.strftime('%Y-%m-%d'),week_day, NUMERO_EMPLOYE,piece_jour,0,str(debut_samedi)+':00',False ))
else:
last_log_num_prod += 1
cursor.execute("""
INSERT INTO LOG_JOURNEE_PROD (NUM_LOG_JOUR_PROD, DATE,WEEK_DAY, NUMERO_EMPLOYE,NB_PIECES,NB_PIECES_SUP,HEURE_ARRIVEE,RETARD)
VALUES (?, ?, ?,?, ?, ?, ?,?)
""", (last_log_num_prod, datei.strftime('%Y-%m-%d'),week_day, NUMERO_EMPLOYE,piece_jour,0,'08:00',False ))
# Commit the changes
conn.commit()
```
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment