質問編集履歴

1

コードを追加しました

2021/09/29 00:24

投稿

SYSYSYSYSYSY
SYSYSYSYSYSY

スコア8

test CHANGED
File without changes
test CHANGED
@@ -10,11 +10,31 @@
10
10
 
11
11
  ```
12
12
 
13
- This is a first line of the ticket
13
+ name,'様'
14
-
14
+
15
- <br>
15
+ <br>
16
-
16
+
17
- This is a second line of the ticket
17
+ 'いつもお世話になっております。'
18
+
19
+ <br>
20
+
21
+ '調査番号:'value2
22
+
23
+ <br>
24
+
25
+ '調査内容:'
26
+
27
+ <br>
28
+
29
+ value
30
+
31
+ <br>
32
+
33
+ 'ろしくお願いいたします。'
34
+
35
+ <br>
36
+
37
+ assignee
18
38
 
19
39
  ```
20
40
 
@@ -28,9 +48,19 @@
28
48
 
29
49
  ```
30
50
 
51
+ name,'様'
52
+
31
- This is a first line of the ticket
53
+ 'いつもお世話になっております。'
32
-
54
+
33
- This is a second line of the ticket
55
+ '調査番号:'value2
56
+
57
+ '調査内容:'
58
+
59
+ value
60
+
61
+ 'ろしくお願いいたします。'
62
+
63
+ assignee
34
64
 
35
65
  ```
36
66
 
@@ -38,11 +68,31 @@
38
68
 
39
69
  ```
40
70
 
71
+ name,'様'
72
+
73
+
74
+
41
- This is a first line of the ticket
75
+ 'いつもお世話になっております。'
42
-
43
-
44
-
76
+
77
+
78
+
45
- This is a second line of the ticket
79
+ '調査番号:'value2
80
+
81
+
82
+
83
+ '調査内容:'
84
+
85
+
86
+
87
+ value
88
+
89
+
90
+
91
+ 'ろしくお願いいたします。'
92
+
93
+
94
+
95
+ assignee
46
96
 
47
97
  ```
48
98
 
@@ -52,13 +102,229 @@
52
102
 
53
103
 
54
104
 
55
- ```ここに言語名を入力
105
+ ```GAS
106
+
56
-
107
+ function testInquiry() {
108
+
109
+ //アクティブなスプレッドシートのシートを取得する
110
+
111
+ let mySheet = SpreadsheetApp.getActiveSheet();
112
+
113
+ //選択されているアクティブな範囲を取得する
114
+
115
+ let myActiveRange = mySheet.getActiveRange();
116
+
117
+ //アクティブな範囲から最初のRow:行、Column:列を取得する
118
+
119
+ let selectedRow = myActiveRange.getRow();
120
+
121
+ let selectedColumn = myActiveRange.getColumn();
122
+
123
+ Logger.log(selectedColumn)
124
+
125
+ Logger.log(selectedRow)
126
+
127
+
128
+
129
+ if(selectedColumn==11){ //アクティブセルがK列かを判定
130
+
131
+ var changedRow = selectedRow;
132
+
133
+ }
134
+
135
+ Logger.log(changedRow)
136
+
137
+
138
+
139
+
140
+
141
+ var range = mySheet.getRange("D"+changedRow);//お問い合わせ内容
142
+
143
+ var range2 = mySheet.getRange("B"+changedRow)//調査番号
144
+
145
+ var rangeName = mySheet.getRange("J"+changedRow)//顧客番号
146
+
147
+ Logger.log(range.getValue())
148
+
149
+ Logger.log(range2.getValue())
150
+
151
+ Logger.log(myActiveRange.getValue())
152
+
153
+ if (myActiveRange.getValue() == "済"){
154
+
155
+ var value = range.getValue()
156
+
157
+ var value2 = range2.getValue()
158
+
159
+ var name = rangeName.getValue()
160
+
161
+
162
+
163
+ var assignee = "staff1"
164
+
165
+ var assignee_id = "staffid"
166
+
167
+
168
+
169
+ //文言変えたいばあいはここ
170
+
171
+
172
+
173
+ var array = [
174
+
175
+ name,'様','\n',
176
+
177
+ 'いつもお世話になっております。','\n',
178
+
179
+ '調査番号:',value2,'\n',
180
+
181
+ '調査内容:','\n',
182
+
183
+ value, '\n',
184
+
185
+ 'ろしくお願いいたします。','\n',
186
+
187
+ '\n',
188
+
189
+ assignee];
190
+
191
+ var values = array.join('').replace(/\r?/g,"");
192
+
193
+ }
194
+
195
+ else{
196
+
197
+ var values = "まだです"
198
+
199
+ }
200
+
201
+ //var values = value+value2
202
+
203
+ Logger.log(values)
204
+
205
+ return[values,name,assignee_id,value2]
206
+
207
+ }
208
+
209
+
210
+
211
+
212
+
213
+ function onSubmit(e){
214
+
215
+ var body = testInquiry()[0]
216
+
217
+ var name = testInquiry()[1]
218
+
219
+ var assignee_id = testInquiry()[2]
220
+
221
+ var value2 = testInquiry()[3]
222
+
223
+
224
+
225
+ var subject_ = ['Test問合わせシート:',value2,'について'];
226
+
227
+ var subject = subject_.join('')
228
+
229
+ Logger.log(subject)
230
+
231
+ //var body = 'test ticket was successful!';
232
+
233
+ //Logger.log(body)
234
+
235
+
236
+
237
+ Logger.log(body)
238
+
239
+ Logger.log(name)
240
+
241
+
242
+
243
+ //ユーザーIDをハードコーディング
244
+
245
+ if (name == "Aさん"){
246
+
247
+ var requesterEmai = "A@testtest.com"
248
+
249
+ }
250
+
251
+ else if (name == "Bさん"){
252
+
253
+ var requesterEmai = "B@test.com"
254
+
255
+ }
256
+
257
+ else if (name == "Cさん"){
258
+
259
+ var requesterEmai = "C@test.com"
260
+
261
+ }
262
+
263
+ Logger.log(requesterEmai)
264
+
265
+
266
+
267
+ //ユーザー名とメールアドレスの組み合わせはユニークじゃないといけない
268
+
269
+ var data = {
270
+
271
+ 'ticket': {
272
+
273
+ "tags":["japan"],
274
+
275
+ "assignee_id":assignee_id,//担当者は固定
276
+
277
+ "email_ccs": [
278
+
57
- "This is a first line of the ticket","\n","This is a second line of the ticket"
279
+ { "user_email": "teketekete@testtest.com","action": "put"},
280
+
58
-
281
+ { "user_email": "teketekete@testtest.com","action": "put"},
282
+
283
+ { "user_email": "customer2@example.com","action": "put"},
284
+
285
+ { "user_email": "customer3@example.com","action": "put"},
286
+
287
+ { "user_email": "customer4@example.com","action": "put"},
288
+
289
+ { "user_email": "customer5@example.com","action": "put"}
290
+
291
+
292
+
293
+ ],"requester":{"name":name, "email":requesterEmai},'subject': subject,'comment': {'body': body}}};
294
+
295
+ var url = 'https://subdomain.zendesk.com/api/v2/tickets.json';
296
+
297
+ var user = 'myemail@myemail/token';
298
+
299
+ var pwd = 'mytoken';
300
+
301
+ var options = {
302
+
303
+ 'method' : 'post',
304
+
305
+ 'headers': {
306
+
307
+ 'Authorization': 'Basic ' + Utilities.base64Encode(user + ':' + pwd), // Modified
308
+
309
+ },
310
+
311
+ 'contentType': 'application/json',
312
+
313
+ 'payload' : JSON.stringify(data)
314
+
315
+ };
316
+
317
+ if (body != "まだです"){
318
+
319
+ Logger.log(body)
320
+
321
+ //UrlFetchApp.fetch(url, options);
322
+
323
+ }
324
+
325
+ }
326
+
59
- ```
327
+ ```
60
-
61
-
62
328
 
63
329
  ### 試したこと
64
330