Productos - AndresRamos/ARSoftware.Contpaqi.Comercial.Api GitHub Wiki

Modelos

Producto

Propiedades

id

  • tipo: integer
  • descripcion: Id del producto.

codigo

  • tipo: string
  • descripcion: Código del producto.

nombre

  • tipo: string
  • descripcion: Nombre del producto.

tipo

  • tipo: enum
  • descripcion: Tipo del producto.
  • valores posibles: Producto, Paquete, Servicio

controlExistencias

  • tipo: string
  • descripcion: Control de existencias del producto.
  • valores posibles: Ninguno, Unidades, Caracteristicas, Series, Pedimentos, Lotes
  • observaciones: El controlExistencias es de tipo [flag] y puede contener más de un valor separado por comas. Ejemplo: Unidades, Pedimentos indica que el producto tiene control de existencias por unidades y pedimentos.

unidadMedida

  • tipo: UnidadMedida
  • descripcion: Unidad de medida del producto.

claveSat

  • tipo: string
  • descripcion: Clave SAT del producto.

datosExtra

  • tipo: dictionary
  • descripcion: Datos extra del producto.
  • observaciones: Los datos extra es un diccionario del esquema completo de la tabla de productos en la base de datos, donde la llave es el nombre del campo en la base de datos y el valor es el valor del campo en la base de datos. Para conocer los campos disponibles y sus tipos, consulta la documentación del esquema de la base de datos de CONTPAQi Comercial.

Ejemplo

{
  "id": 0,
  "codigo": "PRUEBAUNI",
  "nombre": "PRODUCTO CON UNIDAD",
  "tipo": "Producto",
  "controlExistencias": "Unidades",
  "unidadMedida": {
    "id": 0,
    "abreviatura": "PZ",
    "nombre": "PRUEBA",
    "claveSat": "H87",
    "datosExtra": {}
  },
  "claveSat": "43231500",
  "datosExtra": {
    "CTEXTOEXTRA1": "Texto extra 1",
    "CTEXTOEXTRA2": "Texto extra 2",
    "CTEXTOEXTRA3": "Texto extra 3"
  }
}

Solicitudes

Buscar Productos

ContpaqiRequest

$Type

  • tipo: string
  • valor: BuscarProductosRequest

Model

id (opcional)
  • tipo: integer
  • nullable: true
  • descripcion: Parámetro para buscar productos por id.
codigo (opcional)
  • tipo: string
  • nullable: true
  • descripcion: Parámetro para buscar productos por código.
sqlQuery (opcional)
  • tipo: string
  • nullable: true
  • descripcion: Parámetro para buscar productos por SQL. El valor debe ser el WHERE clause y debes asegurarte de sanatizar tu SQL.

Options

cargarDatosExtra (opcional)
  • tipo: boolean
  • descripcion: Indica si se deben cargar los datos extra del producto en la respuesta.
  • observaciones: Cargar los datos extra puede alentar el procesamiento de la solicitud ya que se carga el esquema completo de la base de datos de cada registro.

Ejemplo

{
  "$type": "BuscarProductosRequest",
  "model": {
    "id": 1,
    "codigo": "PROD001",
    "sqlQuery": "CNOMBREPRODUCTO = \u0027PRODUCTO DE PRUEBAS"
  },
  "options": {
    "cargarDatosExtra": false
  }
}

ContpaqiResponse

$Type

  • tipo: string
  • valor: BuscarProductosResponse

Model

numeroRegistros
  • tipo: integer
  • descripcion: Número de registros encontrados.
productos
  • tipo: array de Producto
  • descripcion: Lista de productos encontrados.

Ejemplo

{
  "$type": "BuscarProductosResponse",
  "model": {
    "numeroRegistros": 1,
    "productos": [
      {
        "id": 0,
        "codigo": "PROD001",
        "nombre": "PRODUCTO DE PRUEBAS",
        "tipo": "Producto",
        "claveSat": "43231500",
        "datosExtra": {
          "CCLAVESAT": "43231500",
          "CTEXTOEXTRA1": "Texto extra 1",
          "CTEXTOEXTRA2": "Texto extra 2",
          "CTEXTOEXTRA3": "Texto extra 3"
        }
      }
    ]
  }
}

Crear Producto

ContpaqiRequest

$Type

  • tipo: string
  • valor: CrearProductoRequest

Model

producto
  • tipo: Producto
  • descripcion: Producto a crear.

Options

cargarDatosExtra (opcional)
  • tipo: boolean
  • descripcion: Indica si se deben cargar los datos extra del producto en la respuesta.
  • observaciones: Cargar los datos extra puede alentar el procesamiento de la solicitud ya que se carga el esquema completo de la base de datos de cada registro.

Ejemplo

{
  "$type": "CrearProductoRequest",
  "model": {
    "producto": {
      "id": 0,
      "codigo": "PROD001",
      "nombre": "PRODUCTO DE PRUEBAS",
      "tipo": "Producto",
      "claveSat": "43231500",
      "datosExtra": {
        "CCLAVESAT": "43231500",
        "CTEXTOEXTRA1": "Texto extra 1",
        "CTEXTOEXTRA2": "Texto extra 2",
        "CTEXTOEXTRA3": "Texto extra 3"
      }
    }
  },
  "options": {
    "cargarDatosExtra": false
  }
}

ContpaqiResponse

$Type

  • tipo: string
  • valor: CrearProductoResponse

Model

producto
  • tipo: Producto
  • descripcion: Producto creado.

Ejemplo

{
  "$type": "CrearProductoResponse",
  "model": {
    "producto": {
      "id": 0,
      "codigo": "PROD001",
      "nombre": "PRODUCTO DE PRUEBAS",
      "tipo": "Producto",
      "claveSat": "43231500",
      "datosExtra": {
        "CCLAVESAT": "43231500",
        "CTEXTOEXTRA1": "Texto extra 1",
        "CTEXTOEXTRA2": "Texto extra 2",
        "CTEXTOEXTRA3": "Texto extra 3"
      }
    }
  }
}

Actualizar Producto

ContpaqiRequest

$Type

  • tipo: string
  • valor: ActualizarProductoRequest

Model

codigoProducto
  • tipo: string
  • descripcion: Código del producto a actualizar.
datosProducto
  • tipo: dictionary
  • descripcion: Datos del producto a actualizar.
  • observaciones: Los datos del agente es un diccionario donde la llave es el nombre del campo de la tabla de productos en la base de datos y el valor es un valor valido del campo en la base de datos. Para conocer los campos disponibles y sus tipos, consulta la documentación del esquema de la base de datos de CONTPAQi Comercial.

Options

cargarDatosExtra (opcional)
  • tipo: boolean
  • descripcion: Indica si se deben cargar los datos extra del producto en la respuesta.
  • observaciones: Cargar los datos extra puede alentar el procesamiento de la solicitud ya que se carga el esquema completo de la base de datos de cada registro.

Ejemplo

{
  "$type": "ActualizarProductoRequest",
  "model": {
    "codigoProducto": "PROD001",
    "datosProducto": {
      "CCLAVESAT": "43231500",
      "CTEXTOEXTRA1": "Texto extra 1",
      "CTEXTOEXTRA2": "Texto extra 2",
      "CTEXTOEXTRA3": "Texto extra 3"
    }
  },
  "options": {
    "cargarDatosExtra": false
  }
}

ContpaqiResponse

$Type

  • tipo: string
  • valor: ActualizarProductoResponse

Model

producto
  • tipo: Producto
  • descripcion: Producto actualizado.

Ejemplo

{
  "$type": "ActualizarProductoResponse",
  "model": {
    "producto": {
      "id": 0,
      "codigo": "PROD001",
      "nombre": "PRODUCTO DE PRUEBAS",
      "tipo": "Producto",
      "claveSat": "43231500",
      "datosExtra": {
        "CCLAVESAT": "43231500",
        "CTEXTOEXTRA1": "Texto extra 1",
        "CTEXTOEXTRA2": "Texto extra 2",
        "CTEXTOEXTRA3": "Texto extra 3"
      }
    }
  }
}

Eliminar Producto

ContpaqiRequest

$Type

  • tipo: string
  • valor: EliminarProductoRequest

Model

codigoProducto
  • tipo: string
  • descripcion: Código del producto a eliminar.

Options

Ejemplo

{
  "$type": "EliminarProductoRequest",
  "model": {
    "codigoProducto": "PROD001"
  },
  "options": {}
}

ContpaqiResponse

$Type

  • tipo: string
  • valor: EliminarProductoResponse

Model

Ejemplo

{
  "$type": "EliminarProductoResponse",
  "model": {}
}