4498289198
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi
46 lines
1.6 KiB
Go
46 lines
1.6 KiB
Go
//go:build live
|
|
|
|
package lkgateway
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
"testing"
|
|
)
|
|
|
|
// Только чтение: что сейчас в BJ_DEPO_DATA — таблицы обмена и тестовые остатки.
|
|
func TestDepoNowLive(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()
|
|
ctx := context.Background()
|
|
for _, tb := range []string{"FTV_M2M", "FTV_M2M_LINES", "FTV_M2M_EVENTS", "FTV_M2M_HANDBOOK"} {
|
|
var n int
|
|
err := db.QueryRowContext(ctx, "SELECT COUNT(*) FROM dbo."+tb).Scan(&n)
|
|
fmt.Printf("%-18s строк %d %v\n", tb, n, err)
|
|
}
|
|
rows, err := db.QueryContext(ctx, `SELECT c.NUMBER, v.ISIN, CAST(rst.K AS float) FROM OD_RESTS rst JOIN OD_CLIENTS c ON c.ID=rst.REG_1 JOIN OD_VALUES v ON v.ID=rst.VALUE_ID
|
|
WHERE c.NUMBER IN ('ВТНКЦ00002000','ВТНКЦ00000816') AND v.ISIN='RU0009029540'`)
|
|
if err == nil {
|
|
for rows.Next() {
|
|
var a, i string
|
|
var k float64
|
|
_ = rows.Scan(&a, &i, &k)
|
|
fmt.Println("остаток SBER:", a, k)
|
|
}
|
|
}
|
|
var mx string
|
|
_ = db.QueryRowContext(ctx, "SELECT ISNULL(CONVERT(varchar(19),MAX(D_DATE),120),'') FROM OD_DOCS").Scan(&mx)
|
|
fmt.Println("последний документ OD_DOCS:", mx)
|
|
var jobs int
|
|
_ = db.QueryRowContext(ctx, "SELECT COUNT(*) FROM sys.objects WHERE name LIKE '%M2M%' AND type IN ('P','TR','U','V')").Scan(&jobs)
|
|
fmt.Println("объектов с M2M в имени (таблицы/процедуры/триггеры):", jobs)
|
|
}
|