Hola Chris, me pregunto si existe una API de administración de estudios para realizar un estudio como estudio actual en JMP clínico. No se pudo encontrar en la tabla de tu blog.Muchas gracias. Baoyue Li
JMP Clinical se lanzó hace 11 años específicamente para el análisis y revisión de ensayos clínicos en curso centrados en datos estandarizados y estructurados. La intención era que un revisor recibiera datos para su revisión en intervalos regulares (cada semana o cada mes) para buscar señales de seguridad y/o eficacia utilizando informes preprogramados, lo que le permitiría al revisor autoservicio y profundizar en los datos sobre -demanda. La esperanza era acelerar el proceso de revisión y descubrir anomalías que de otro modo podrían pasarse por alto al observar tablas, listados y figuras estáticas.
Además, un objetivo del software era aliviar la carga que pesa sobre los equipos de programación que producen los datos solicitados y los informes estandarizados para los revisores. Esto requirió mucho tiempo para ejecutar programas o editar programas/scripts/macro para satisfacer las necesidades de los revisores y de forma frecuente. Los grupos de programación y bioestadística normalmente quieren centrarse en datos e informes que son exclusivos del estudio en lugar de la tabla o gráfico habitual que es bastante consistente de un estudio a otro, lo que les permite prestar una atención más sólida y sin distracciones a las anomalías específicas del estudio que requieren más conocimientos estadísticos o algorítmicos.
En su mayor parte, JMP Clinical cumplió esos objetivos, a menos que estemos hablando de organizaciones que tienen muchos estudios que necesitan ser monitoreados y/o tener actualizaciones frecuentes de datos. Esto supone una nueva carga para los equipos de gestión de datos y bioestadística para actualizar los estudios dentro de JMP Clinical o supone una carga para los revisores que no eran tan competentes en el proceso o no tenían el tiempo. También fue de interés la capacidad de modificar algunos de los informes dentro de JMP Clinical y/o ejecutar la misma plantilla de revisión de forma programada. La demanda de automatización y ampliación de las capacidades de JMP Clinical se convirtió en una petición frecuente.
Ingrese las API de JMP Clinical. Alrededor de JMP Clinical 6, introdujimos el marco y la infraestructura para hacer posible mediante programación el acceso basado en API a funciones/procesos comunes. En JMP Clinical 7, las API se lanzaron y estuvieron disponibles mediante JMP Scripting Language (JSL). En la versión 8 (la última), se lanzaron más capacidades. Esta publicación no entra en detalles sobre el desarrollo de las API. En cambio, se centra en el uso práctico de ellos para que puedas aprovecharlos.
Compartiré una serie de publicaciones sobre cómo invocar y utilizar las API. Empezamos de forma sencilla introduciendo la sintaxis básica y su uso. Luego avanzamos hacia usos más sofisticados mientras usamos JSL. Y finalmente, combinamos las dos categorías de API invocadas dentro de algún JSL.
Para aquellos que no estén familiarizados con los términos Estudio, Revisión, Informe y Plantilla de revisión dentro del contexto de JMP Clinical, consulte este enlace para familiarizarse. Además, aquellos que no estén familiarizados con JSL deberían leer y obtener más información en este enlace . Se requiere conocimiento de ambos para comprender el uso de las API.
Para esta publicación, comencemos con las dos categorías principales y lo que es posible. Las dos categorías principales son: funciones relacionadas con la gestión de estudios (JMPClinicalStudyManagerAPI) y funciones relacionadas con la revisión (JMPClinicalReviewAPI). La idea es replicar lo que se puede hacer dentro de la interfaz de usuario (principalmente los clics en los botones) donde no es necesaria una decisión del usuario (como actualizar los metadatos de los estudios con nuevos datos o abrir una plantilla de revisión y ejecutarla para un estudio específico). A continuación se muestran un par de imágenes que resaltan botones relacionados con la sección Gestión del estudio y la sección Revisión.
Study Management Functions that Relate to JMPClinicalStudyMangerAPIStudy Management Functions that Relate to JMPClinicalStudyMangerAPIStudy Management Functions that Relate to JMPClinicalStudyMangerAPIStudy Management Functions that Relate to JMPClinicalStudyMangerAPIFunciones de gestión de estudios relacionadas con JMPClinicalStudyMangerAPI
Review/Review Builder Functions that Related to JMPClinicalReviewAPIReview/Review Builder Functions that Related to JMPClinicalReviewAPIReview/Review Builder Functions that Related to JMPClinicalReviewAPIReview/Review Builder Functions that Related to JMPClinicalReviewAPIFunciones de revisión/revisión del generador relacionadas con JMPClinicalReviewAPI
La API está diseñada para tomar tareas rutinarias y automatizarlas, como actualizar estudios con nuevos metadatos o agregar o eliminar contenido de un informe dentro de una plantilla de revisión. Aquí hay un enlace para las funciones JMPClinicalStudyManagerAPI y otro enlace para las funciones JMPClinicalReviewAPI como referencia.
Entonces, ¿qué puede hacer esta API JMPClinicalStudyMangerAPI por nosotros? Nos proporciona dos conjuntos de funciones: funciones de obtención (las que obtienen información sobre los estudios) y funciones de manipulación (las que añaden, eliminan o actualizan estudios). Aquí hay una tabla de lo que es posible con la sintaxis básica para llamar a esa función. Los dos puntos (:) separan la llamada a la API y la llamada a la función. Algunas de las funciones tienen entrada y/o retornos. Consulte los enlaces anteriores para obtener detalles sobre lo que se espera como entrada y retorno.
|
API de gestión de estudios
|
|
Obtener funciones de información
|
Manipular funciones de estudio
|
|
Obtenga una lista de nombres de estudios:
JMPClinicalStudyManagerAPI:getStudyList
|
Agregar estudio:
JMPClinicalStudyManagerAPI:addStudy
|
|
Obtener la ruta de la carpeta SDTM:
JMPClinicalStudyManagerAPI:getSDTMFolder
|
Actualizar metadatos del estudio:
JMPClinicalStudyManagerAPI:actualizarEstudios
|
|
Obtener la ruta de la carpeta ADaM:
JMPClinicalStudyManagerAPI:getADaMFolder
|
Eliminar estudio:
JMPClinicalStudyManagerAPI: eliminar estudios
|
|
Se agregó el estudio Obtener fecha:
JMPClinicalStudyManagerAPI:getInitialDate
|
Actualice el estudio con una nueva instantánea:
JMPClinicalStudyManagerAPI: actualización de instantáneas
|
|
Obtener fecha del estudio fue actualizado por última vez:
JMPClinicalStudyManagerAPI:getLastUpdatedDate
|
Cambiar carpetas de datos del estudio:
JMPClinicalStudyManagerAPI: cambiar carpetas
|
|
Obtener estado de instantánea habilitada:
JMPClinicalStudyManagerAPI:getEnableSnapshot
|
Datos previos al cálculo del perfil del paciente:
JMPClinicalStudyManagerAPI:precomputeProfileData
|
|
Obtener número de instantánea:
JMPClinicalStudyManagerAPI:getSnapshotNumber
|
|
|
Obtener lista de dominios reconocidos:
JMPClinicalStudyManagerAPI:getDomainList
|
|
|
Obtener el tamaño del archivo en el disco:
JMPClinicalStudyManagerAPI:getSizeOnDisk
|
|
|
Obtenga el ID de usuario del sistema operativo Windows que creó/agregó el estudio:
JMPClinicalStudyManagerAPI:getCreatedBy
|
|
|
Obtenga el ID de usuario del sistema operativo Windows que actualizó por última vez el estudio:
JMPClinicalStudyManagerAPI:getLastUpdatedBy
|
|
Ahora veamos la segunda categoría, Funciones de revisión. Éste también tiene un conjunto de funciones de obtención y manipulación, pero para revisiones e informes.
|
Revisar API
|
|
Obtener funciones de información
|
Manipular funciones de informe/revisión
|
|
Obtenga una referencia al Creador de reseñas:
JMPClinicalReviewAPI:getReviewBuilder
|
Cerrar generador de reseñas:
JMPClinicalReviewAPI: cerrarReviewBuilder
|
|
Obtenga el ID y el título del visor/creador de reseñas:
JMPClinicalReviewAPI:getReviewViewerIDsAndTitles
|
Abrir plantilla de revisión:
JMPClinicalReviewAPI:openReviewTemplate
|
|
Obtenga una referencia al Visor de reseñas:
JMPClinicalReviewAPI:getReviewViewer
|
Agregar un informe al generador de reseñas:
JMPClinicalReviewAPI: agregar informe
|
|
Obtenga la tabla de contenidos del visor/creador de reseñas:
JMPClinicalReviewAPI:getReviewTableOfContents
|
Eliminar formulario de informe Generador de reseñas por título:
JMPClinicalReviewAPI: eliminarReportByReportTitle
|
|
Obtenga una lista de ID de informes:
JMPClinicalReviewAPI:getReportIDList
|
Ejecutar informe en Review Builder por título:
JMPClinicalReviewAPI: ejecutarReportByReportTitle
|
|
Obtenga una lista de títulos de informes:
JMPClinicalReviewAPI:getReportTitleList
|
Ejecute todos los informes en Review Builder:
JMPClinicalReviewAPI:manAllReports
|
|
Obtener una referencia a un Informe por ID:
JMPClinicalReviewAPI:getReportByID
|
Guarde el contenido de Review Builder como reseña:
JMPClinicalReviewAPI: guardarRevisión
|
|
Obtenga una referencia a un informe por título:
JMPClinicalReviewAPI:getReportByTitle
|
Abra una reseña en el Visor de reseñas:
JMPClinicalReviewAPI:openReview
|
|
Obtenga detalles del informe por título:
JMPClinicalReviewAPI:getReportDetailsByTitle
|
Insertar sección en un informe:
JMPClinicalReviewAPI:insertSectionIntoReportByTitleAndSectionName
|
|
Obtenga una referencia a los resultados del informe:
JMPClinicalReviewAPI:getReportResultsByTitle
|
Eliminar sección de un informe:
JMPClinicalReviewAPI: eliminar sección de informe por título y nombre de sección
|
|
Obtenga una referencia a la sección de informes:
JMPClinicalReviewAPI:getReportSectionByTitleAndSectionName
|
Agregar al final de la sección del informe:
JMPClinicalReviewAPI: appendDisplayObjectToReportSectionByTitleAndSectionName
|
|
Obtenga una lista de tablas de datos utilizadas en el informe:
JMPClinicalReviewAPI:getDataTablesForSectionByTitleAndSectionName
|
Agregar al comienzo de la sección del informe:
JMPClinicalReviewAPI: anteponerDisplayObjectToReportSectionByTitleAndSectionName
|
Ahora tenemos una lista de las diferentes funciones y de lo que pueden hacer. Ahora es el momento de mostrar la sintaxis básica de su uso. La forma básica es esta:
JMPClinical<CATEGORY>API:<FUNCTION> ({argumento(s)}, {espacio de nombres}, completeListenerFunction());</FUNCTION></CATEGORY>
Ya presenté la llamada básica a las funciones API relacionadas con la gestión de estudios cuando mencioné JMPClinicalStudyManagerAPI. Entonces, si quiero actualizar los metadatos de los estudios registrados, se verá así:
JMPClinicalStudyManager:refreshStudies ({studyList},{},{});
Analizaremos esto más y hablaremos sobre usos comunes en la próxima serie de publicaciones. Por ahora, quería presentarles lo que está disponible y cómo invocarlo en general dentro de un script JSL. La próxima publicación tratará sobre un ejemplo de la API de gestión de estudios, hablará más sobre el espacio de nombres y las partes completeListener de la llamada API y comenzará a empaquetarlo en JSL, así como a usar JSL dentro de él.
Hasta el próximo post, ¡cuídense!
@BaoyueLi,
Lo siento por la respuesta tardía. No vi este comentario en esta publicación. En JMP Clinical 18 (y 17) puede configurar el estudio actual. Aquí hay un enlace a la página API de la guía del usuario:
https://www.jmp.com/support/downloads/JMPC180_documentation/Content/JMPCUserGuide/AP_C_0013.htm
Aquí hay un uso genérico del mismo:
JMPClinicalStudyManagerAPI:setCurrentStudy("nombre del estudio")
Establece el estudio actual al especificado.
Argumentos:
estudio: una cadena que contiene el nombre del estudio que se establecerá como estudio actual, o Vacío() para establecer el estudio actual como
Devoluciones:
Si el estudio actual se realizó con éxito, 1; de lo contrario 0.
gracias cris ¿Parece que el comando "setCurrentStudy" no está disponible en la versión clínica 15 de JMP?