//go:build live package lkgateway import ( "context" "fmt" "testing" ) // Только чтение: остатки SBER по счёту клиента в DEPO во всех разрезах. ACC=ВТНКЦ00002000 func TestDepoRestsLive(t *testing.T) { rc, err := NewRuntimeConfig("/var/lib/bj/.bj/setup.json") if err != nil { t.Fatal(err) } fs := rc.Snapshot().Fancy db, err := fancyOpen(fs, fs.DepoDB()) if err != nil { t.Fatal(err) } defer db.Close() rows, err := db.QueryContext(context.Background(), `SELECT c.NUMBER, ISNULL(p.PORT_NUM,''), v.ISIN, CAST(rst.K AS float), CAST(ISNULL(rst.A,0) AS float), ISNULL(rst.BLOCK_REASON,''), ISNULL(rst.BAL_ACC,0) FROM OD_RESTS rst JOIN OD_CLIENTS c ON c.ID=rst.REG_1 LEFT JOIN OD_CLIENTS_PORTS p ON p.CLIENT=c.ID JOIN OD_VALUES v ON v.ID=rst.VALUE_ID WHERE c.NUMBER IN ('ВТНКЦ00002000','ВТНКЦ00000816') AND v.ISIN='RU0009029540'`) if err != nil { t.Fatal(err) } for rows.Next() { var num, port, isin, br string var k, a float64 var bal int _ = rows.Scan(&num, &port, &isin, &k, &a, &br, &bal) fmt.Printf("%s %s %s K=%v A=%v блок=%q бал.счёт=%d\n", num, port, isin, k, a, br, bal) } }