/neodata_pu

Neodata is an important software of unit prices and budget control in México & latinoamérica for other hand neodataPu is a small code for extract information of our budgets like catalog of units prices and export all budgets to format json for make analitycs for data.

Primary LanguagePython

Neodata Precios Unitarios SDK

Supported Versions License

Dependency

pip install requests
pip install pandas
pip install pyodbc
pip install pymssql
pip install xlsxwriter
pip install openpyxl
pip install wheel

Build the lib.

into the folder run

python -m build

seek the folder '\dist\neodata_pu-1.0.1-py3-none-any.whl' and install

pip install \dist\neodata_pu-1.0.1-py3-none-any.whl

Auto Install

install.bat

Import

from neodata_pu import neodataPu

Initialize Neodata Object

path_script: This path are in C:\NEODATA2021\DB\Scripts or C:\NEODATAWinPlus\DB\Scripts,the objective is seek the file called SQLCMD.exe.

    path = 'C:\\NEODATAWinPlus\\BD\\Scripts\\'
    neodataPu(path_script=path)

If you have the server conexion you could set in the var server.

    path = 'C:\\NEODATAWinPlus\\BD\\Scripts\\'
    srv = 'np:\\.\pipe\LOCALDB#84702F74\tsql\query'
    neodataPu(path_script=path,server=srv)

 

GET A LIST OF ALL NEODATA'S DB

neodata.getListDb()
	
[
    { name:'C:\\FOO.mdf' },
    { name:'C:\\BUDGET_ONE.mdf' },
    { name:'C:\\BUDGET_TWO.mdf' },
]
	

 

GET ALL VERSIONS OF BUDGET

    neodata.getVersions(db='C:\\BUDGET_ONE.mdf')
	
[
    { IdPresupuesto:'1',Presupuesto:'BUDGET V1' },
    { IdPresupuesto:'2',Presupuesto:'BUDGET V2' },
    { IdPresupuesto:'3',Presupuesto:'BUDGET V3' },
]
	

 

GET ALL WSB PANEL

    neodata.getPartidasWSB(db='C:\\BUDGET_ONE.mdf',
                            idBudget='1'
	
[
    {
        'IdPresupuestoPartida':5,
        'PartidaWBS':'1.1',
        'IdPartidaPadre':2,
        'DescripcionPartidaLarga':'CONCRETO',
    }
]
	

GET ALL WSB PANEL WITH COST

    neodata.getPartidasWSBWithCost(db='C:\\BUDGET_ONE.mdf',
                            idBudget='1'
	
[
    {
        'IdPresupuestoPartida':5,
        'PartidaWBS':'1.1',
        'IdPartidaPadre':2,
        'DescripcionPartidaLarga':'CONCRETO',
        'Costo':1000.23,
        'Precio':1000.23,,
        'CostoTotal':1000.23,
        'PrecioTotal':1000.23,
        'Costo1Nivel':1000.23,
        'Precio1Nivel':1000.23
    }
]
	

GET ALL Budget Items

    neodata.getBudgetItems(db='C:\\BUDGET_ONE.mdf',
                            idBudget='1'
	
[
    {
        'IdPresupuestoConcepto':item,
        'IdPresupuesto':item,
        'IdPresupuestoPartida':item,
        'IdExpIns':item,
        'IdEstimacionTipo':item,
        'IdAgrupador':item,
        'Control':item,
        'Renglon':item,
        'Cantidad':item,
        'CantidadTotal':item,
        'Marca':item,
        'CodigoAuxiliar':item,
        'DescripcionAuxiliar':item,
        'IndirectoEspecial':item,
        'PorcentajeIndirectoEspecial':item,
        'RutaGenerador':item,
        'AEstimar':item,
        'YaEstimado':item,
        'Programado':item,
        'IdCentro':item,
        'IdContratista':item,
        'Bloqueado':item,
        }
]
	

Special Report Level Indent

idBudget = This var is the id of budget

Type Nodo 1

(+) Budget WSB 1
    (+) Body A WSB 1.1
        (+) Entry 1 WSB 1.1.01
            (-) Level 1 WSB 1.1.01.001
    (+) Body B WSB 1.2
        (+) Entry 1 WSB 1.2.01
            (-) Level 1 WSB 1.1.02.001
    neodata.getBudgeBodySimpleIndet(db='C:\\BUDGET_ONE.mdf',idBudget='1')
[
    {
        'Id':item,
        'Crt':item,
        'Partida':item,
        'Codigo':item,
        'C.Cliente':item,
        'Concepto':concept,
        'Unidad':item,
        'Cantidad':item,
        'Volumen':item,
        'Kg_IM':item,
        'Kg':item,
        'Piezas':item,
        'Base Nivel':item,
        'Cuerpo':item,
        'Tipo':item,
        'Autor':item,
        'Observaciones':item,
        'Precio':item    
    }
]
	

Type Nodo 2

(+) Cuerpo WSB 1
    (+) Partida WSB 1.01
        (-) Nivel WSB 1.01.001
        (-) Nivel WSB 1.01.002
        (-) Nivel WSB 1.01.003
    (+) Partida WSB 1.02
        (-) Nivel WSB 1.02.001
    neodata.getBudgeBodysEntriesLevesItems(db='C:\\BUDGET_ONE.mdf',idBudget='1')
[
    {
        'Id':item,
        'Crt':item,
        'Partida':item,
        'Codigo':item,
        'C.Cliente':item,
        'Concepto':concept,
        'Unidad':item,
        'Cantidad':item,
        'Volumen':item,
        'Kg_IM':item,
        'Kg':item,
        'Piezas':item,
        'Base Nivel':item,
        'Cuerpo':item,
        'Tipo':item,
        'Autor':item,
        'Observaciones':item,
        'Precio':item    
    }
]
	

GET Catalog

    neodata.getCatalogo(db='C:\\BUDGET_ONE.mdf')
	
[
    {
        'IdCodigo':item,
        'Codigo':item,
        'Descripcion':item,
        'IdUnidad':item,
        'Unidad':item,
        'Descripcion_Unidad':item,
    }
]
	

🍺 Buy me a beer

BTC LTC
1JDA4DEkVnB9rvLgLD5Xe9jfU2pJtnCZiG LhBrMcs7i3mD2wjiUv3KGtx9eEQeyBE4Dg