-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathcreate.go
More file actions
157 lines (116 loc) · 6.21 KB
/
create.go
File metadata and controls
157 lines (116 loc) · 6.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
package designer
import (
"github.com/v8platform/marshaler"
)
type FileDBFormat string
func (t FileDBFormat) MarshalV8() (string, error) {
return string(t), nil
}
const (
DB_FORMAT_8_2_14 FileDBFormat = "8.2.14"
DB_FORMAT_8_3_8 = "8.3.8"
)
const (
DBMS_MSSQLServer = "MSSQLServer"
DBMS_PostgreSQL = "PostgreSQL"
DBMS_IBMDB2 = "IBMDB2"
DBMS_OracleDatabase = "OracleDatabase"
)
var _ command = (*CreateInfoBaseOptions)(nil)
type CreateInfoBaseOptions struct {
DisableStartupDialogs bool `v8:"/DisableStartupDialogs" json:"disable_startup_dialogs"`
UseTemplate string `v8:"/UseTemplate" json:"use_template"`
AddToList bool `v8:"/AddToList" json:"add_to_list"`
}
type CreateFileInfoBaseOptions struct {
CreateInfoBaseOptions `v8:",inherit" json:"common"`
// имя каталога, в котором размещается файл информационной базы;
File string `v8:"File, equal_sep, quotes" json:"file"`
// язык (страна), который будет использован при открытии или создании информационной базы.
// Допустимые значения такие же как у параметра <Форматная строка> метода Формат().
// Параметр Locale задавать не обязательно.
// Если не задан, то будут использованы региональные установки текущей информационной базы;
Locale string `v8:"Locale, optional, equal_sep" json:"locale"`
// формат базы данных
// Допустимые значения: 8.2.14, 8.3.8.
// Значение по умолчанию — 8.2.14
DBFormat FileDBFormat `v8:"DBFormat, optional, equal_sep" json:"db_format"`
// размер страницы базы данных в байтах
// Допустимые значения:
// 4096(или 4k),
// 8192(или 8k),
// 16384(или 16k),
// 32768(или 32k),
// 65536(или 64k),
// Значение по умолчанию — 4k
DBPageSize int64 `v8:"DBPageSize, optional, equal_sep" json:"db_page_size"`
}
type CreateServerInfoBaseOptions struct {
CreateInfoBaseOptions `v8:",inherit" json:"common"`
//имя сервера «1С:Предприятия» в формате: [<протокол>://]<адрес>[:<порт>], где:
//<протокол> – не обязателен, поддерживается только протокол TCP,
//<адрес> – имя сервера или IP-адрес сервера в форматах IPv4 или IPv6,
//<порт> – не обязателен, порт главного менеджера кластера, по умолчанию равен 1541.
Srvr string `v8:"Srvr, equal_sep" json:"server"`
//имя информационной базы на сервере "1С:Предприятия";
Ref string `v8:"Ref, equal_sep" json:"ref"`
//тип используемого сервера баз данных:
// MSSQLServer — Microsoft SQL Server;
// PostgreSQL — PostgreSQL;
// IBMDB2 — IBM DB2;
// OracleDatabase — Oracle Database.
DBMS string `v8:"DBMS, equal_sep" json:"dbms"`
//имя сервера баз данных;
DBSrvr string `v8:"DBSrvr, equal_sep" json:"db_srvr"`
// имя базы данных в сервере баз данных;
DB string `v8:"DB, equal_sep" json:"db_ref"`
//имя пользователя сервера баз данных;
DBUID string `v8:"DBUID, equal_sep" json:"db_user"`
//пароль пользователя сервера баз данных.
// Если пароль для пользователя сервера баз данных не задан,
// то данный параметр можно не указывать;
DBPwd string `v8:"DBPwd, optional, equal_sep" json:"db_pwd"`
// смещение дат, используемое для хранения дат в Microsoft SQL Server.
// Может принимать значения 0 или 2000.
// Данный параметр задавать не обязательно. Если не задан, принимается значение 0;
SQLYOffs int32 `v8:"SQLYOffs, optional, equal_sep" json:"sql_year_offs"`
// язык (страна), (аналогично файловому варианту);
Locale string `v8:"Locale, optional, equal_sep" json:"locale"`
// создать базу данных в случае ее отсутствия ("Y"|"N".
// "Y" — создавать базу данных в случае отсутствия,
// "N" — не создавать. Значение по умолчанию — N).
CrSQLDB bool `v8:"CrSQLDB, optional, equal_sep, bool_true=Y" json:"create_db"`
// в созданной информационной базе запретить выполнение регламентных созданий (Y/N).
// Значение по умолчанию — N;
SchJobDn bool `v8:"SchJobDn, optional, equal_sep, bool_true=Y" json:"sch_job_on"`
// имя администратора кластера, в котором должен быть создан начальный образ.
// Параметр необходимо задавать, если в кластере определены администраторы
// и для них аутентификация операционной системы не установлена или не подходит;
SUsr string `v8:"SUsr, optional, equal_sep" json:"cluster_user"`
// пароль администратора кластера.
SPwd string `v8:"SPwd, optional, equal_sep" json:"cluster_pwd"`
}
func (d CreateInfoBaseOptions) Command() string {
return COMMAND_CREATEINFOBASE
}
func (d CreateInfoBaseOptions) Check() error {
return nil
}
func (d CreateInfoBaseOptions) Values() []string {
v, _ := marshaler.Marshal(d)
return v
}
func NewCreateInfoBase() CreateInfoBaseOptions {
d := CreateInfoBaseOptions{
DisableStartupDialogs: false,
}
return d
}
func (d CreateFileInfoBaseOptions) Values() []string {
v, _ := marshaler.Marshal(d)
return v
}
func (d CreateServerInfoBaseOptions) Values() []string {
v, _ := marshaler.Marshal(d)
return v
}