作成者カテゴリ返答の対象
公開
NAG
09/05/2002 09:42 AM
文書リンクアイコン 連番の採り方 教えてください。
Re: バックグランドって・・・?

・・・書いた内容難しかったですか?

今回、てつさんがやろうとしていることは、新規に文書を作成する時に、
同じカテゴリの既存文書から、続きで連番をつける事ですよね。

つまり、新規文書(現在の文書)と同じカテゴリから、最大の番号を
持っている既存文書を取得して、その既存文書の番号に1を足した値
(番号)を、新規文書の番号に設定して保存する。
という処理にすればOKというのは判りますよね?

まず、最初に書いたスクリプトでは・・・
途中まではいいのですが、既存文書より取得した最大の番号を、
現在の文書に設定しています。(保存はしていない)
また、既存文書より取得した最大の番号に1を足した値を、その既存文書に
設定して保存していますので、NGになります。

二回目に書いているスクリプトでは・・・
既存文書より取得した最大の番号に1を足した値を、『未取得の』現在の文書に
設定しているが保存していない。
(実行するとエラーになる筈ですが・・・)
最大の番号を取得するのに使った既存文書は、何の更新もしていないのに、
意味もなく保存している。

−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
Sub Initialize
Dim SESSION As New NOTESSESSION
Dim DB As NOTESDATABASE
Dim view As NOTESVIEW
Dim doc As NOTESDOCUMENT
Dim WS As New NOTESUIWORKSPACE
Dim UIDOC As NOTESUIDOCUMENT

Set DB = SESSION.CURRENTDATABASE
Set UIDOC = WS.CURRENTDOCUMENT

If UIDOC.FieldGetText("UKETUKENO") <> "" then
'UKETUKENO取得済み→終了
Exit Sub
End If

Select Case UIDOC.FieldGetText("SYURUI")
Case "車":RKUBUN="車"
Case "バイク":RKUBUN="バイク"
Case "自転車":RKUBUN="自転車"
End Select

Set view = db.GetView("マスター\連番")
Set doc = view.GetDocumentByKey("RKUBUN",True)
If Not(doc Is Nothing) Then
TMP_UKETUKENO = Cint(doc.UKETUKENO(0))
'既存文書(doc)から番号を数値に変換し、取得→TMP_UKETUKENOにセット
Call UIDOC.FieldSetText("UKETUKENO",_
Format(TMP_UKETUKENO + 1,"00000"))
'番号(TMP_UKETUKENO)に1を足し込み、桁をあわせて、
'UKETUKENOフィールドに設定
Call UIDOC.Save ' 現在の文書を保存
Else
'新規のカテゴリとして、"00001"番とする。
Call UIDOC.FieldSetText("UKETUKENO","00001")
Call UIDOC.Save ' 現在の文書を保存
End If
End Sub
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
一部の処理を変更しましたが、参考にしてください。
それぞれのメソッド等は、オンラインヘルプで確認してください。

尚、このスクリプトは、実行もしていないないし、コンパイルも掛けていないので、
コピペでの流用は、おやめください。(実行できなくても責任もてないので)


[Previous Main Document]
連番の採り方 教えてください。 (てつ)
. . re: 連番の採り方 (Tak)
. . . . ありがとうございます (てつ)
. . Re:連番の採り方 教えてください。 (NAG)
. . . . Re: 連番の採り方 教えてください。 (てつ)
. . バックグランドって・・・? (てつ)
. . . . バックグランドって・・・? (NAG)
. . . . . . Re: バックグランドって・・・? (てつ)
. . . . . . . . Re: バックグランドって・・・? (NAG) * 現在地 *
. . . . . . . . . . Re: バックグランドって・・・? (てつ)
. . . . . . . . . . . . Re: バックグランドって・・・? (NAG)
. . . . . . . . . . . . . . Re: バックグランドって・・・? (てつ)
. . . . . . . . . . . . . . . . Re: バックグランドって・・・? (NAG)
. . . . . . . . . . . . . . . . . . 連番取れるのですが、次に連番取れません (てつ)
. . . . . . . . . . . . . . . . . . . . 連番取れるのですが、次に連番取れません。 (熊)
. . . . . . . . . . . . . . . . . . . . . . 連番取れるのですが、次に連番取れません。 (熊)
. . . . . . . . . . . . . . . . . . . . . . . . Re: 連番取れるのですが、次に連番取れません。 (てつ)
. . . . . . . . . . . . . . . . . . . . Re:連番取れるのですが、次に連番取れません 連番取れるのですが、次に連番取れません (NAG)
. . . . . . . . . . . . . . . . . . . . . . Re:連番取れるのですが、次に連番取れません (NAG)
. . . . . . . . . . . . . . . . . . . . . . Re: 連番取れるのですが、次に連番取れません 連番取れるのですが、次に連番取れません (てつ)
. . . . . . . . . . . . . . . . . . . . . . . . Re: 連番取れるのですが、次に連番取れません (NAG)
. . . . . . . . . . . . . . . . . . 連番取れるのですが、次に連番取れません (てつ)
. . . . . . . . . . . . . . . . . . . . 連番取れるのですが、次に連番取れません。 (熊)
. . . . . . . . . . . . . . . . . . . . . . Re: 連番取れるのですが、次に連番取れません。 (てつ)
. . . . . . . . . . . . . . . . . . . . . . . . Re: 連番取れるのですが、次に連番取れません。 (熊)
. . . . . . . . . . . . . . . . . . . . . . . . . . Re: 連番取れるのですが、次に連番取れません。 (てつ)
. . . . . . . . . . . . . . . . . . . . . . . . . . . . Re: 連番取れるのですが、次に連番取れません。 (熊)
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Re: 連番取れるのですが、次に連番取れません。 (てつ)
[Next Main Document]