A method for processing data using a series of program products, a method for producing program products, and associated computer programs.

The method configures processing programs to interact only with frozen data tables using a reference date and encryption, addressing data integrity and bias issues in data processing, ensuring secure and controlled data access.

FR3166988A1Pending Publication Date: 2026-04-03RAYON THOMAS
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
FR · FR
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-09-30
Publication Date
2026-04-03

AI Technical Summary

Technical Problem

Current data processing software lacks robust frameworks for controlling data exploitation steps, leading to potential information biases due to undeclared freezing or premature knowledge of study results.

Method used

A method that configures processing programs to interact only with data tables after a definitive freeze, using a reference date to prevent modifications and incorporates encryption and password protection to ensure data integrity, allowing independent service providers to control program production.

Benefits of technology

Ensures data integrity by preventing post-freeze modifications and allows controlled data exploitation, reducing information biases and enabling secure, client-specific data access.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

Particularly suited to biomedical research, the invention relates to a data processing method comprising: a step of collecting study data into a study table; a step of freezing the contents of the study table; and a step of generating programs (PREP, STAT, EXAM) capable of processing the data contained in the study table. The method according to the invention also includes a step of configuring the processing programs (PREP, STAT, EXAM) to prevent these programs from interacting with any study table other than the one resulting from the freezing step. Thus, thanks to the invention, data processing of the study table can only be performed using the processing programs (STAT, EXAM) after the data table has been definitively frozen. Reference: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Title of the invention: Method for processing data by series of program products, method for producing program products and associated computer programs

[0001] The present invention relates to a data processing method including: • A step of collecting study data within a study table; • A step to finalize the content of the study table; and • A step in producing programs capable of processing the data contained in the study table. technical field

[0002] The present invention falls within the field of decision-making computing and more particularly the field of biomedical research; it relates to methods and programs for guiding the validation and exploitation of study data as preventive solutions to study biases that can be induced by an undeclared freezing (definitive freezing) of data, as well as by premature and / or partial knowledge of study results. Previous technique

[0003] While numerous data processing software programs are now available to facilitate the collection of study results, the framework for processing procedures is only sporadically provided, and the current state of the art allows only limited control over the steps leading to data exploitation. Thus, information biases can easily infiltrate data validation if data is frozen after study results have been obtained, or if no data freeze is actually implemented. Description of the invention

[0004] In order to remedy the disadvantages stated above, the inventor proposes an alternative solution to the mechanisms known in the prior art.

[0005] Indeed, according to the invention, a method in accordance with the introductory paragraph further includes a step of configuring the processing programs aimed at prohibiting these processing programs from interacting with any other study table than that which results from the freezing step.

[0006] Thus, thanks to the invention, processing of the data contained in the study table can only be carried out using the processing programs after the data table has been definitively fixed. These processing programs will then use indiscriminately all the data as fixed, and any subsequent modification of the data included in the data table due to information bias, but also to Any other disturbance will be inoperative because it will be ignored by the processing programs as configured at the end of the configuration step.

[0007] The invention is thus remarkable in that it provides for a selective inhibition of the processing capabilities of programs, the scope of which a person skilled in the art usually tries to extend.

[0008] According to a particular embodiment of the invention, the process described above includes a step of storing, within a plotting table, each date on which the content of the study table was modified during the collection step, the date of the last modification of the study table before its freezing, called the reference date, being intended to constitute a configuration parameter of at least one processing program.

[0009] Such an embodiment allows, by means of a single parameter consisting of the last modification date of the study table, to configure the processing programs so that they cannot query any study table whose last modification date is different from said reference date.

[0010] It should be noted here that, throughout this document, the concept of date should not be understood as the sole identification of a day of the year, but as a temporal reference which may, for example, be expressed in years, months, days, hours, minutes, seconds and / or fractions of a second and not.

[0011] In other embodiments of the invention, the reference date may be constituted by the precise date on which the study table was actually fixed.

[0012] According to an advantageous embodiment of the invention, a method as described above includes a step of copying the study table at the instigation of the first processing program to interact with said study table after the freezing step.

[0013] In this embodiment of the invention, the content of the study table as frozen is preserved from any subsequent alteration which could result from its interaction with the processing programs, which are then intended to interact with the table resulting from the copy of the frozen table, said copy thus resulting itself by transitivity from the freezing step.

[0014] Another object of the invention is to allow the design of processing programs according to a process allowing the control of their production by a service provider independent of the client(s) intended to implement these programs.

[0015] To this end, the invention also relates to a method for developing processing programs as described above, characterized in that it includes a step of combining, on an external text file, functions for creating / updating at least one plotting table, on the one hand, with parameters constituted by the reference dates for the study tables to be frozen and passwords for protecting the plotting tables of at least one series of processing programs to be created, on the other hand.

[0016] In certain embodiments: • The development process may include a step of adapting the instructions of a series of processing programs to be created by combining them with passwords for the protection of fixed study data made available for consultation to regulate the consultation of study data; • The development process may include a step of combining identity control functions with session identifiers specific to at least one client in order to create program products that only respond to audit client; • The development process may include a step of generating a random password to protect the plotting table data and / or the frozen study data made available for consultation; • The development process may include steps of accessing the reference dates of at least one study table to be frozen, accessing session identifiers specific to at least one client, and tracing the password protecting the tracing table data and / or the frozen study data made available for consultation from a table dedicated to storing this data to ensure the production of said processing programs.

[0017] According to an optional embodiment of the invention, the source code of the processing programs defined above is protected by encryption.

[0018] This optional embodiment ensures that, once configured to only process data from the study table as frozen, the processing programs cannot subsequently be reconfigured to process data from another data table whose integrity is not guaranteed.

[0019] The invention finally relates to a computer program product characterized in that it comprises instructions which, when executed by a processor, implement the data processing method as defined above or the program development method as defined above. Brief description of the drawings

[0020] Other features and advantages of the invention will become more apparent upon reading the following description of a particular embodiment, given by way of illustrative and non-limiting example, and with regard to the accompanying drawings, among which:

[0021] [Fig-1] schematically illustrates an embodiment according to the invention;

[0022] [Fig.2] schematically illustrates a conceptual model of the provider's data; and

[0023] [Fig.3] schematically illustrates a relational database of the service provider. Description of the implementation methods

[0024] In the embodiments described below: • The programs correspond to Macro-programs of the version 4 of the decision-making software “SAS®” (for “Statistical Analysis Software”, translated as “Statistical Analysis Software”) of the “SAS® Analytics Pro Package” (translated as “SAS® Analysis Software”). • A table corresponds to a “SAS®” table. • A catalogue corresponds to a file in which “SAS®” programs are stored in their compiled form. • A searchable study table corresponds to a password-protected version of a frozen study table held by the provider, on which data exploitation rights have been granted to the provider and its clients. • A user corresponds to any employee, consultant, intern or subcontractor of a client of the service provider (parallel client of the software publisher “SAS®”), using the program products in the context of biomedical research. • The “SAS®” session identifiers correspond to the values ​​of the automatic macro variables &Syssite, &Syshostname and &Sysuserid of the users and represent the client reference, the client computer name and the client computer account name of the software publisher “SAS®”, respectively. • Identical or similar elements are identified by identical reference symbols across all figures. Computer programs for customers

[0025] When the default catalogue called "sasmacr" is opened by the "SAS®" software, programs PROG1, PROG2 and PROG3 may appear to the user to deploy series of nested processing programs according to three distinct groups of consecutive programs in the establishment of validation, operation and consultation of study tables, respectively.

[0026] A series of PREP processing programs, made available by the PROGL program, consists of configurable programs that complement each other in data correction steps, steps for creating additional variables to identify unavailable / inapplicable data from study tables, and "ODS" instructions (for "Output Delivery System"). results routing") results editing, allowing in particular the establishment of data dictionaries (in RTF or PDF format) in order to prepare the freezing of study tables with the provider.

[0027] A series of STAT processing programs, made available by the PROG2 program, consists of configurable programs that complement each other in the steps of creating additional variables to describe the study data and "ODS" instructions for editing results, allowing all users with the same value of Automatic Macro-variable &Syssite, i.e. having the same "SAS®" customer reference, to create publishable statistical reports (in RTF, PDF or HTML format) from a study table frozen by the provider at the request of the customer in question (or from several study tables frozen alternately).

[0028] A series of EXAM processing programs, made available by the PROG3 program, consists of configurable programs that complement each other in the creation of additional variables to describe the study data and "ODS" instructions for editing results, allowing all users with the same value of Automatic Macro-variable &Syssite, i.e. having the same "SAS®" customer reference, to examine the frozen study tables made available to other customers, with or without access to their raw data, via the creation of reports (in RTF or PDF format).

[0029] Each series of PREP, STAT or VIEW processing programs intervenes only with a study table, one of whose programs, after carrying out the requested intervention, has automatically relayed the precise date and time of last modification within a T1, T2 or T3 table called "tracing" protected by password, and whose precise modification date to be considered initially has either been transmitted within said T1 tracing table at the execution of a program initializing a PREP series of data validation, or has been integrated into the source code of a program initializing a STAT or EXAM series of data exploitation, at the request of the client, in order to include a step of freezing said study data and of dissociating the validation and exploitation processes,A PREP series data validation program product that expressly stores the precise date and time of the last modification of a study table to be frozen within a Tl tracing table that can be transmitted to the service provider.

[0030] For illustrative purposes, an overview of the use of the precise date and time of table modification is included in the appendix to the description. Programs for the service provider

[0031] When the default catalog called "sasmacr" is opened by the "SAS®" software, the PROGP, PROG5 and PROG6 programs may appear to the service provider for produce PREP, STAT and EXAM processing programs using keywords stored within a set of T4 tables called "parameter tables".

[0032] The PROG4 program creates PREP processing programs on an external text file via "%put" write instructions, combines identity control functions to be written to the "SAS®" session identifiers stored in the T_UTI parameter table so that these programs only respond to specific users, combines functions for creating / updating the Tl tracing table to be written to the random passwords it generates in order to protect them, and traces these passwords in said T_UTI parameter table.

[0033] The PROG5 program creates STAT processing programs on an external text file via "%put" write instructions, combines identity control functions to be written to "SAS®" session identifiers stored in the T_UTI parameter table so that these programs only respond to specific users, combines T2 tracing table creation / update functions to be written to the specific dates / times of modification of the frozen study tables stored in the T_ETU parameter table so that these programs only respond to the frozen study tables of said users, considers how the study tables were frozen (whether or not operating rights on the study table were granted) in order to grant different file creation rights as appropriate via conditional macro instructions, generates random passwords to protect the T2 tracing tables,and stores these passwords in the aforementioned T_UTI configuration table.

[0034] The PROG6 program creates the EXAM processing programs on an external text file via "%put" write instructions, combines identity control functions to be written to the "SAS®" session identifiers stored in T_UTI parameter tables so that these programs only respond to specific users, combines T3 tracing table creation / update functions to be written to the specific dates / times of modification of the searchable study tables stored in the T_ETU parameter table so that these programs only respond to the searchable study tables requested by clients, considers how the study data is searchable (date of grant of the corresponding frozen study table, grant by right of reuse or by right of consultation) in order to grant different access rights to said data as appropriate via conditional macro instructions,generates random passwords to protect the T3 tracing tables, and stores these passwords in the T_UTI configuration table.

[0035] The programs PROG5 and PROG6 have the ability to join the T4 parameter tables by their common variables SYSSITE and CODETUD (described below), to read / write said keywords.

[0036] For illustrative purposes, an overview of the creation process used by the PROG4, PROG5 and PROG6 programs is shown in the Annex to the description.

[0037] Also, the T_UTI configuration table lists information relating to user tracking and potential study tables requested by clients. Updated periodically by the service provider (notably via the PROGP PROG5 and PR0G6 programs), the T_UTI table includes the following variables: • S YSSITE representing the primary key composed of the T_UTI table and listing the value of Macro-variable &Syssite of the users. • S YSHOST representing the primary key composed of the T_UTI table and listing the value of Macro-variable &Syshostname of the users. • S YSUSER representing the primary key composed of the T_UTI table and listing the value of Macro-variable &Sysuserid of the users. • CODETUD listing the ID-RCB or EudraCT registration number (for "European Union Drug Regulating Authorities Clinical Trials Database", translated as "European database of clinical trials of medicines") of studies whose searchable data table is requested by clients (and representing a foreign key). • PWPREP listing the password (generated by the PROG4 program) of the "PW" option (for "Password", translated as "Password") of the PREP serial tracing Tl tables of the users. • K EYPREP listing the password (generated by the PROG4 program) of the "AES" encryption option (for "Advanced Encryption Standard") of the users' PREP serial tracing Tl tables. • PWSTAT listing the password (generated by the PROG5 program) of the "PW" option of the T2 tables of STAT series tracing of users. • KEYSTAT listing the password (generated by the PROG5 program) of the "AES" encryption option of the T2 tables of STAT serial tracing of users. • PWEXAM listing the password (generated by the PROG6 program) of the "PW" option of the T3 tables of EXAM series tracing of users. • KEYEXAM listing the password (generated by the PROG6 program) of the "AES" encryption option of the T3 EXAM series tracing tables of the users.

[0038] The T_ETU parameter table lists the information relating to the study tables frozen by the provider at the request of its clients and determines how they are frozen / made available for consultation. Updated with each new freeze (notably thanks to the Tl tracing tables transmitted to the service provider), the T_ETU table includes the following variables: • C ODETUD representing the primary key of the T_ETU table and listing the ID-RCB or EudraCT registration number of studies whose data table is frozen. • S YSSITE listing the value of Macro-variable &Syssite of users whose study table is frozen (and representing a foreign key). • D ATEGEL listing the freezing date of the study tables. • D ATEMAJ listing the precise date and time elements of modification of the frozen study tables. • D ATECONS listing, if any, the date of granting of rights for frozen study tables. • DATEMAJ2 listing the precise date and time elements of modification of the study tables that can be consulted in EX AM series. • PWETUD listing the "PW" option password for the searchable study tables. • KEYETUD listing the "AES" encryption option password for searchable study tables. • DR ACCESS listing the right of access to the raw data of the searchable study tables granted to users. Appendix: Example program

[0039] Below, the program %Example creates a program called %Product, whose instructions (hidden from their automatic execution objects during creation) are combined with values ​​of Macro-variables via "%put" writing instructions: %macro example(); / *The following line of code creates a table* / data table; run; / *The following lines of code retrieve the precise date and time of modification of the created table within a macro-variable called "motcle"* / data _NULL_; set sashelp.vtable; if libname="WORK" and memname="TABLE" then do; call symputx('word',put(modate,DATETIME16.),"!"); call symputx('statement',mod(second(round(modate)),2),,"l"); end;run; / *The following lines of code create a program on a .sas file* / options nonotes; proc printto log="C:\Users\User\Documents\file.sas"; run; %put %nrstr(%macro product;); %if &instruction=l %then %do; / *The following line of code combines a program instruction to be created with the value of the macro-variable called "motcle"* / %put %nrstr(%put The table created by the Example program contains a modification time where the seconds are odd: )&keyword%nrstr(.;); %end; %else %if &instruction=0 %then %do; / *The following line of code combines a program instruction to be created with the value of the macro-variable called "motcle"* / %put %nrstr(%put The table created by the Example program contains a modification time where the seconds are even: )&keyword%nrstr(.;); %end; %put %nrstr(%mend product;); proc printto; run; %include "C:\Users\Utilisateur\Documents\fichier.sas"; %mend example; %example; %product;

Claims

Demands

1. A method for developing a processing program (PREP, STAT or EXAM), implemented by computer, including a step of producing a processing program (PREP, STAT or EXAM) capable of processing a study table; the method is characterized in that it includes a step of adapting instructions for a processing program (PREP, STAT or EXAM) to be produced by combining them on a text file at the date of the last modification of the study table to configure at least one program (PREP, STAT or EXAM) to process only the study table frozen by said combination.

2. A method for processing program data (PREP, STAT or EXAM) as defined in claim 1, implemented by computer, characterized in that it includes a step of storing, within a plotting table (T1, T2 or T3), each date on which the content of the study table is modified during a step of collecting study data, the date of last modification of the study table being intended to constitute a configuration parameter of at least one processing program (PREP, STAT or EXAM) to process only said study table.

3. Product computer program, comprising instructions which, when executed by a processor, implement a method according to one of claims 1 or 2.

Citation Information

Patent Citations

  • Automated identification of tasks that must be completed before a clinical trial database can be locked

    US20100049545A1

  • System and method for managing a workflow for biomedical development

    US20190311048A1