Saltar al contenido principal
Roberty Studio
RPADatabase

MongoDB

MongoDB

El módulo MongoDB es responsable de conectarse a una base de datos MongoDB, realizar operaciones de CRUD y manipular los resultados dentro del robot.

js
const connection = await Database.MongoDB.connection["v2_0_0"]({
connectionId: 'id-da-conexao-configurada-no-workspace',
})

Métodos​

connection​

Método responsable de crear una conexión con una base de datos MongoDB.

js
const connection = await Database.MongoDB.connection["v2_0_0"]({
connectionId: 'id-da-conexao-configurada-no-workspace',
})

Parámetros obligatorios​

  • connectionId: String - espera el ID de la conexión de MongoDB configurada en el workspace (Workspace → Conexiones). El string de conexión se obtiene de esa conexión.

La versión anterior, v1_0_0, recibe el string de conexión directamente en el parámetro connectionString: String, en lugar del ID de la conexión del workspace:

js
const connection = await Database.MongoDB.connection["v1_0_0"]({
connectionString: 'mongodb://userRoberty:robertyBD123@localhost:27017',
})

Parámetros opcionales​

Este método no tiene parámetros opcionales.

Retorno​

La constante o variable creada, como la connection del ejemplo mostrado anteriormente, recibirá el objeto de conexión (MongoClient), que puede utilizarse como parámetro en los otros métodos.

selectDb​

Método responsable de seleccionar una base de datos a partir de una conexión MongoDB.

js
const db = await Database.MongoDB.selectDb["v1_0_0"]({
connection: connection,
dbName: 'meuBancoDeDados',
})

Parámetros obligatorios​

  • connection: Retorno de la acción de conexión - espera la conexión obtenida a través de la acción connection.
  • dbName: String - nombre de la base de datos que será seleccionada.

Parámetros opcionales​

Este método no tiene parámetros opcionales.

Retorno​

La constante o variable creada, como la db del ejemplo mostrado anteriormente, recibirá el objeto de la base de datos (Db), que puede utilizarse como parámetro en los otros métodos.

selectCollection​

Método responsable de seleccionar una colección dentro de una base de datos MongoDB.

js
const collection = await Database.MongoDB.selectCollection["v1_0_0"]({
db: db,
collectionName: 'minhaColecao',
})

Parámetros obligatorios​

  • db: Retorno de la acción selectDb - espera la base de datos obtenida a través de la acción selectDb.
  • collectionName: String - nombre de la colección que será seleccionada.

Parámetros opcionales​

Este método no tiene parámetros opcionales.

Retorno​

La constante o variable creada, como la collection del ejemplo mostrado anteriormente, recibirá el objeto de la colección (Collection), que puede utilizarse como parámetro en los otros métodos.

insertOne​

Método responsable de insertar un único documento en una colección MongoDB.

js
const result = await Database.MongoDB.insertOne["v1_0_0"]({
collection: collection,
document: { nome: 'Roberty', idade: 30 },
})

Parámetros obligatorios​

  • collection: Retorno de la acción selectCollection - espera la colección obtenida a través de la acción selectCollection.
  • document: Object - objeto que será insertado en la colección.

Parámetros opcionales​

  • session: Retorno de la acción startTransaction - sesión de transacción obtenida a través de la acción startTransaction.

Retorno​

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con la siguiente propiedad:

  • result.insertedId: any - ID del documento insertado.

insertMany​

Método responsable de insertar varios documentos en una colección MongoDB.

js
const result = await Database.MongoDB.insertMany["v1_0_0"]({
collection: collection,
documents: [
{ nome: 'Roberty', idade: 30 },
{ nome: 'Automation', idade: 5 },
],
})

Parámetros obligatorios​

  • collection: Retorno de la acción selectCollection - espera la colección obtenida a través de la acción selectCollection.
  • documents: Object[] - array de objetos que serán insertados en la colección.

Parámetros opcionales​

  • session: Retorno de la acción startTransaction - sesión de transacción obtenida a través de la acción startTransaction.

Retorno​

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con la siguiente propiedad:

  • result.insertedIds: any[] - array con los IDs de los documentos insertados.

findOne​

Método responsable de buscar un único documento en una colección MongoDB.

js
const result = await Database.MongoDB.findOne["v1_0_0"]({
collection: collection,
findFilter: { nome: 'Roberty' },
})

Parámetros obligatorios​

  • collection: Retorno de la acción selectCollection - espera la colección obtenida a través de la acción selectCollection.
  • findFilter: Object - filtro de búsqueda en el formato de objeto MongoDB.

Parámetros opcionales​

  • session: Retorno de la acción startTransaction - sesión de transacción obtenida a través de la acción startTransaction.

Retorno​

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con las siguientes propiedades:

  • result.document: Object - documento encontrado. Será null si no se encuentra ningún documento.
  • result.found: Boolean - indica si el documento fue encontrado.

findMany​

Método responsable de buscar varios documentos en una colección MongoDB.

js
const result = await Database.MongoDB.findMany["v1_0_0"]({
collection: collection,
findFilter: { idade: { $gte: 18 } },
})

Parámetros obligatorios​

  • collection: Retorno de la acción selectCollection - espera la colección obtenida a través de la acción selectCollection.
  • findFilter: Object - filtro de búsqueda en el formato de objeto MongoDB.

Parámetros opcionales​

  • session: Retorno de la acción startTransaction - sesión de transacción obtenida a través de la acción startTransaction.

Retorno​

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con las siguientes propiedades:

  • result.documents: FindCursor - cursor con los documentos encontrados. Para obtener los documentos en un array, utiliza await result.documents.toArray().
  • result.count: Number - cantidad de documentos que corresponden al filtro.

updateOne​

Método responsable de actualizar un único documento en una colección MongoDB.

js
const result = await Database.MongoDB.updateOne["v1_0_0"]({
collection: collection,
filter: { nome: 'Roberty' },
updateFilter: { $set: { idade: 31 } },
})

Parámetros obligatorios​

  • collection: Retorno de la acción selectCollection - espera la colección obtenida a través de la acción selectCollection.
  • filter: Object - filtro para localizar el documento que será actualizado.
  • updateFilter: Object - objeto de actualización en el formato MongoDB (ej.: { $set: { campo: valor } }).

Parámetros opcionales​

  • session: Retorno de la acción startTransaction - sesión de transacción obtenida a través de la acción startTransaction.

Retorno​

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con la siguiente propiedad:

  • result.modified: Boolean - indica si el documento fue modificado.

updateMany​

Método responsable de actualizar varios documentos en una colección MongoDB.

js
const result = await Database.MongoDB.updateMany["v1_0_0"]({
collection: collection,
filter: { ativo: false },
updateFilter: { $set: { ativo: true } },
})

Parámetros obligatorios​

  • collection: Retorno de la acción selectCollection - espera la colección obtenida a través de la acción selectCollection.
  • filter: Object - filtro para localizar los documentos que serán actualizados.
  • updateFilter: Object - objeto de actualización en el formato MongoDB (ej.: { $set: { campo: valor } }).

Parámetros opcionales​

  • session: Retorno de la acción startTransaction - sesión de transacción obtenida a través de la acción startTransaction.

Retorno​

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con la siguiente propiedad:

  • result.modifiedCount: Number - cantidad de documentos modificados.

deleteOne​

Método responsable de eliminar un único documento de una colección MongoDB.

js
const result = await Database.MongoDB.deleteOne["v1_0_0"]({
collection: collection,
findFilter: { nome: 'Roberty' },
})

Parámetros obligatorios​

  • collection: Retorno de la acción selectCollection - espera la colección obtenida a través de la acción selectCollection.
  • findFilter: Object - filtro para localizar el documento que será eliminado.

Parámetros opcionales​

  • session: Retorno de la acción startTransaction - sesión de transacción obtenida a través de la acción startTransaction.

Retorno​

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con la siguiente propiedad:

  • result.deleted: Boolean - indica si el documento fue eliminado.

deleteMany​

Método responsable de eliminar varios documentos de una colección MongoDB.

js
const result = await Database.MongoDB.deleteMany["v1_0_0"]({
collection: collection,
findFilter: { ativo: false },
})

Parámetros obligatorios​

  • collection: Retorno de la acción selectCollection - espera la colección obtenida a través de la acción selectCollection.
  • findFilter: Object - filtro para localizar los documentos que serán eliminados.

Parámetros opcionales​

  • session: Retorno de la acción startTransaction - sesión de transacción obtenida a través de la acción startTransaction.

Retorno​

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con la siguiente propiedad:

  • result.deletedCount: Number - cantidad de documentos eliminados.

countDocuments​

Método responsable de contar el número de documentos en una colección MongoDB que corresponden a un filtro.

js
const result = await Database.MongoDB.countDocuments["v1_0_0"]({
collection: collection,
findFilter: { ativo: true },
})

Parámetros obligatorios​

  • collection: Retorno de la acción selectCollection - espera la colección obtenida a través de la acción selectCollection.
  • findFilter: Object - filtro para localizar los documentos que serán contados.

Parámetros opcionales​

  • session: Retorno de la acción startTransaction - sesión de transacción obtenida a través de la acción startTransaction.

Retorno​

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con la siguiente propiedad:

  • result.count: Number - cantidad de documentos que corresponden al filtro.

aggregation​

Método responsable de ejecutar un pipeline de agregación en una colección MongoDB.

js
const result = await Database.MongoDB.aggregation["v1_0_0"]({
collection: collection,
pipeline: [
{ $match: { ativo: true } },
{ $group: { _id: '$categoria', total: { $sum: 1 } } },
],
})

Parámetros obligatorios​

  • collection: Retorno de la acción selectCollection - espera la colección obtenida a través de la acción selectCollection.
  • pipeline: Object[] - array de etapas del pipeline de agregación de MongoDB.

Parámetros opcionales​

  • session: Retorno de la acción startTransaction - sesión de transacción obtenida a través de la acción startTransaction.

Retorno​

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con la siguiente propiedad:

  • result.aggregation: AggregationCursor - cursor con los resultados de la agregación.

startTransaction​

Método responsable de iniciar una transacción en una conexión MongoDB.

js
const { session } = await Database.MongoDB.startTransaction["v1_0_0"]({
connection: connection,
})

Parámetros obligatorios​

  • connection: Retorno de la acción de conexión - espera la conexión obtenida a través de la acción connection.

Parámetros opcionales​

Este método no tiene parámetros opcionales.

Retorno​

La constante o variable creada, como la session del ejemplo mostrado anteriormente, recibirá la propiedad session del objeto devuelto, del tipo ClientSession, que puede pasarse como parámetro session en las acciones de CRUD.

commitTransaction​

Método responsable de confirmar (commit) una transacción iniciada en una conexión MongoDB.

js
await Database.MongoDB.commitTransaction["v1_0_0"]({
session: session,
})

Parámetros obligatorios​

  • session: Retorno de la acción startTransaction - espera la sesión obtenida a través de la acción startTransaction.

Parámetros opcionales​

Este método no tiene parámetros opcionales.

Retorno​

Este método no tiene retorno.

abortTransaction​

Método responsable de deshacer (rollback) una transacción iniciada en una conexión MongoDB.

js
await Database.MongoDB.abortTransaction["v1_0_0"]({
session: session,
})

Parámetros obligatorios​

  • session: Retorno de la acción startTransaction - espera la sesión obtenida a través de la acción startTransaction.

Parámetros opcionales​

Este método no tiene parámetros opcionales.

Retorno​

Este método no tiene retorno.