Re: ¿Cómo desconectarse de una base de datos a través de un script?La clave está en nombrar la conexión de la base de datos por separado de la consulta. En su ejemplo anterior, RedBinMain es para la consulta, no para la conexión. Ejemplo a continuación que debería hacer que la oración anterior tenga sentido:
dbc = Create Database Connection(
"ODBC:DSN=Excel 12.0;DBQ=I:\Engineering\Data\JMPTempData\redbindownload_JMPTMP.xlsx;DefaultDir=I:\Engineering\Data\JMPTempData;DriverId=1046;FIL=excel 12.0;MaxBufferSize=2048;PageTimeout=5;"
);
//your script here: RedBinMain = New SQL Query ........ << Run Foreground
Close Database Connection (dbc);
Re: ¿Cómo desconectarse de una base de datos a través de un script?¡Gracias! Eso tiene sentido y funciona ahora, aunque al principio tuve un error de ODBC hasta que eliminé el "ODBC:" antes de la instrucción DSN=.
También inserté "dbc" como la variable de conexión en la consulta en caso de que alguien más lea esto. Aquí está el nuevo código de trabajo como referencia.</CODE></P><P> </P><PRE><CODE class=" language-jsl">dbc = Create Database Connection(
"DSN=Excel 12.0;DBQ=I:\Engineering\Data\JMPTempData\redbindownload_JMPTMP.xlsx;DefaultDir=I:\Engineering\Data\JMPTempData;DriverId=1046;FIL=excel 12.0;MaxBufferSize=2048;PageTimeout=5;"
);
RedBinMain = New SQL Query(
Version( 130 ),
Connection(dbc),
QueryName( "RedBinMain_beta" ),
Select(
Column( "RBNbr", "t1" ),
Column( "DMR", "t1" ),
Column( "Date_Entered", "t1" ),
Column( "Initiator", "t1" ),
Column( "Location", "t1" ),
Column( "AssignedPerson", "t1" ),
Column( "Problem", "t1" ),
Column( "USI_PN", "t1" ),
Column( "Customer", "t1" ),
Column( "Disposition", "t1" ),
Column( "LastUpdatedDate", "t1" ),
Column( "Cause", "t1" ),
Column( "Classification", "t1" ),
Column( "Defect_Code", "t1" ),
Column( "BrokenSubMenu", "t1"),
Column( "BrokenSubMenu_1", "t1"),
Column( "Dimensional_Code", "t1" ),
Column( "Notes", "t1" ),
Column( "Assignable_WorkCell", "t1" ),
Column( "DispositionerInvestigator", "t1" ),
Column( "ScrappedQuantity", "t1" ),
Column( "PreEtch", "t1" ),
Column( "PostEtch", "t1" )
),
From( Table( "RedBinMain_beta", Alias( "t1" ) ) )
) << Run Foreground;
Close Database Connection (dbc);
¿Cómo desconectarse de una base de datos a través de un script?Hola,
Estoy usando el método File>Database>Query Builder para conectarme a un archivo de Excel y crear una tabla. Puedo cerrar la tabla con el script jmp pero la conexión permanece activa y bloquea el archivo de Excel para otros usuarios. ¿Cómo puedo desconectarme a través del script jmp? Puedo acceder manualmente a Archivo>Base de datos>Abrir>Desconectar, pero me gustaría hacerlo automáticamente en el script en ejecución.
Aquí está el código de consulta:
RedBinMain = New SQL Query(
Version( 130 ),
Connection(
"ODBC:DSN=Excel 12.0;DBQ=I:\Engineering\Data\JMPTempData\redbindownload_JMPTMP.xlsx;DefaultDir=I:\Engineering\Data\JMPTempData;DriverId=1046;FIL=excel 12.0;MaxBufferSize=2048;PageTimeout=5;"
),
QueryName( "RedBinMain_beta" ),
Select(
Column( "RBNbr", "t1" ),
Column( "DMR", "t1" ),
Column( "Date_Entered", "t1" ),
Column( "Initiator", "t1" ),
Column( "Location", "t1" ),
Column( "AssignedPerson", "t1" ),
Column( "Problem", "t1" ),
Column( "USI_PN", "t1" ),
Column( "Customer", "t1" ),
Column( "Disposition", "t1" ),
Column( "LastUpdatedDate", "t1" ),
Column( "Cause", "t1" ),
Column( "Classification", "t1" ),
Column( "Defect_Code", "t1" ),
Column( "BrokenSubMenu", "t1"),
Column( "BrokenSubMenu_1", "t1"),
Column( "Dimensional_Code", "t1" ),
Column( "Notes", "t1" ),
Column( "Assignable_WorkCell", "t1" ),
Column( "DispositionerInvestigator", "t1" ),
Column( "ScrappedQuantity", "t1" ),
Column( "PreEtch", "t1" ),
Column( "PostEtch", "t1" )
),
From( Table( "RedBinMain_beta", Alias( "t1" ) ) )
) << Run Foreground;
Probé el siguiente código sin suerte
close database connection(RedBinMain);
¿Qué me estoy perdiendo?
Aquí es donde la conexión se muestra como "conectada" usando el controlador ODBC "Excel 12.0"

Acceso a los datos