1 秒 8.1 企業会計 1.6 畳み込み。 ベース折りのやり方。 情報ベースを折りたたむための段階的な手順
背景
私が働いている会社では、ベースをカットする必要がある状況が発生しました。 特定の日付より前のすべてのドキュメントと移動を削除します。 この時点でデータベースの重さは約 350GB に達しており、それを扱うのは非常に困難でした。 1C のパフォーマンスも低下し、データベースの日常的な操作が完了するまでに非常に長い時間がかかりました。
決定が下されました - 基地を遮断しました! 標準的な折り加工を何度もテストした結果、私はそれらの加工に失望しました。 私は 2 週間以上、テストベースを切り離して一人でコンピューターと向き合っていました。 特にユーザーは週 6 日データベースで作業するため、運用データベースではこのような期限はまったく受け入れられません。 何とかして膠着状態から抜け出す必要があった。 私たちはその作業を外部委託することにしました。 しかし、ここでも満足できませんでした。作業コストは高く、完了までに多くの時間がかかりました。
一般的に、問題は未解決のままであり、私たちは独自に問題を解決することに戻りました。
私は極端な手段に頼らざるを得ず、他のすべての仕事から切り離され、基地を崩壊させる仕事に取り組みました。
そしてすぐに問題は解決されました。彼らは2日でベースを削減し、70%削減しました。
容量 350 GB の UT データベースを 2 日でトリミングします。
このアルゴリズムを使用してタスクを実行することにしました。
作業データベースのコピーを作成します。 コピーでは、必要な日付の残高を作成し、この日付より前のすべての文書と移動を削除します。 次に、すべての新しいドキュメントを作業データベース (コピーの作成後に作成された) から新しいデータベースに転送します。 ユーザーが新しいデータベースにアクセスできるようにします。
このタスクは 5 つのサブタスクに分割されました。
1. データベースをトリミングした後にすべての新しいドキュメントを新しいデータベースに転送できるように、交換計画を作成します。
2. ロールアップ日に残高を形成します。
3.調整日までにすべての文書と移動を削除します。
4.現在のデータベースから新しいデータベースにドキュメントをアップロードします。
5.作業ベースを新しい(切断された)ベースと交換します。
準備段階には約 2 週間かかりました。交換計画の作成、残高の作成やレジスターの清算のためのツールの検索、メカニズムのテストなどです。
データベースの崩壊プロセス。
1. ロールアップ日に残高を形成します。
残りは標準処理「ConvolutionBase.epf」で作成しました。
時間を節約するために、残高は勤務時間中に作業データベースに生成されました。 なぜなら 残高は「レジスターエントリの調整」という文書によって形成され、処理によってレジスター内の非アクティブな動きが確立される場合、この手順はデータベースにとって無害です。
処理中に、1 つのドキュメントの行数の制限を 50,000 に設定しました。
私はゆっくりとそれを行い、1〜2日以内にすべてが形成されました(約400の文書が判明しました)。
注記:
- ロールアップ日に、基本ロールアップに関係のない「登録簿記入の調整」書類がある場合は、後で誤って混同しないように、それらを後の日付に移動することをお勧めします。
- 残高を作成するときは、すべてのレジスターを表示することをお勧めします。 すべてのレジスターの初期残高は必要ない場合があります。 場合によっては、レジスターがどこでも使用されなくなってしまう場合があります。 これにより、最終的には時間を節約できます。
2. 同一の構成にアップロードするための完全な交換計画を作成します (残高の形成と並行して実行できます)。
3. 業務時間外に、交換計画に登録されているオブジェクトをクリアし、規制を無効にしてデータベースのコピーを作成します。
4.文書の削除と記録簿の消去。
この操作は最も遅いため、この操作を高速化するには、直接 SQL クエリを使用する必要があります。 同様のツールが Infostart にあります。 もう 1 つポイントがあります。この方法でデータを削除すると、オブジェクトはすぐに削除されますが、参照整合性の制御は行われません。 したがって、当社の文書やその他の文書には「オブジェクトが見つかりません...」のような行が表示されます。
私の仕事は、情報提供を目的としてこれらの文書をチェックしないままにしておくことでした。
この目的のために、登録調整伝票の移動に関係するすべての伝票を処理から削除し、ロールアップ日に転送する処理が作成されました。
その後、SQLクエリによる文書・移動の削除処理を利用して、照合日までのすべての文書(文書ログ、文書、蓄積台帳、情報台帳など)を削除します。
注記:
- 情報レジスタによると、クリアする必要があるのは定期的なレジスタのみです。 レジスタが定期的でない場合は、完全にクリアされる可能性が高くなります。
6. 「Base Convolution.epf」を処理して、レジスタエントリを調整するためのドキュメントの移動をアクティブにします。 この場合、これらの文書の処理は前の日付に移ります (これは 2 つのデータベースの残高を照合するのに便利です)。
8.残高の入力が正しいことを確認し、修正します(この目的のために会計スタッフを関与させることができます)
9. ドキュメントを作業データベースから新しいデータベースに転送します。 この手順は、コピーを作成した直後に実行できます。 それらの。 毎日多くのドキュメントがデータベースに作成される場合は、追加の時間を無駄にしないように、ドキュメントを並行して転送することをお勧めします。
10.ユーザーに新しいデータベースへのアクセスを許可します。 これを行うには、ユーザーにとって移行が楽になるように、1c サーバー上のデータベースの名前を変更することをお勧めします。 それらの。 古いデータベースに任意の名前を付け、新しい (折りたたまれた) データベースの名前を古いデータベースに変更します。
注記!
ご存知のとおり、オブジェクトを直接削除する場合、参照整合性はチェックされません。
したがって、オブジェクトを削除した後、存在しないオブジェクトを参照するオブジェクトが現在のデータベースに残ります (「オブジェクトが見つかりません」)。
私の目標は、これらのオブジェクトを折りたたまれたデータベースに含めることではありませんでした。 ただし、リンクが壊れると、データベースと他のプロセス間のさまざまな種類の交換に悪影響を及ぼす可能性があります。
ということで崩壊した拠点に移動させたのですが、拠点を崩壊させた後。
1. 文書を転送する交換ルールを作成しました (非ポスト形式で番号、日付のみ)。
2. 初期残高を入力するための書類で見つかったすべての書類を転送しました。
この手順はローリング後に実行できますが、事前にツールを準備することをお勧めします。
ベースフォールディングとは何ですか?なぜ必要ですか?
ロールアップを実行すると、特定の日付 (ロールアップ日) にレジスターに残高を入力するための文書が生成され、未使用の文書とレジスター内の移動 (情報、累計、会計) はロールアップまでに削除されます。日付 (ロールアップ期間)。 畳み込みの主な目的:
システムの速度を向上させます。
情報ベースのサイズを削減します。
重要。 データベースのロールアップを実行する前に、次のことを行うことをお勧めします。
1. 作業中のインフォベースのコピーでロールアップの予備テストを実行します。
2. 成功したテストの結果にのみ基づいて、実用的な情報ベースの使用の可能性を決定します。
ITS ディスクには、構成 1.6 Enterprise Accounting の処理が含まれています。 バージョン 2.0 には「レジスタエントリの調整」という文書がないため、これはバージョン 2.0 には適していません。 したがって、リンク「ダウンロード」から処理をダウンロードします (ダウンロードするには、登録する必要があります)。
1) バックアップ コピーを作成しましょう。コンフィギュレータのメニュー項目 [管理] - [情報ベースのアップロード] を使用してデータベースに移動します。
2) 1C:Enterprise モードを通じてデータベースに入ります。 データベースをロールアップする日付までに、月末にすべてのドキュメントが完了したかどうかを確認する必要があります (メニュー項目「操作」 - 「日常操作」)。 2009年3月31日までやります。 これは、月末締めの書類が 2009 年 3 月のものである必要があることを意味します。
3) 折りたたむ期間の売上高貸借対照表レポートを生成しましょう (メニュー項目レポート - 売上高貸借対照表)。 データベースを折りたたんだ後、検証用に保存しましょう。
4) [ファイル] - [開く] メニュー項目を使用して、外部処理データベース 2.0 を追加します。
ブックマーク "一般設定":
減額日。 崩壊日は、崩壊した期間に含まれる最後の 1 秒を指します。 したがって、情報ベースで 2009 年の第 1 四半期のデータを折りたたむには、折りたたみ日として 03/31/2009 23:59:59 を指定する必要があります。
残高入力書類の行数。 このパラメータは、1 つの文書内で残高を入力できる最大行数を決定します。 パラメーターが入力されていない場合 (0 に等しい)、行数を制限せずにレジスター/口座ごとに 1 つの文書が作成されます。
ブックマーク 「コンボリューション方式の設定」: この段階で、どのオブジェクトをどの期間折りたたむ必要があるかが決定されます。 オブジェクトを処理するための次のメソッドが提供されています。
- 現在まで - 折りたたみ日より前のオブジェクトは折りたたまれます。 「終了日」パラメータを入力すると、終了日より前のオブジェクトが折りたたまれます。 このようにして、オブジェクトごとに異なるロールアップ日付を指定できます。 「終了日」パラメータが指定されていない場合、ロールアップは「一般設定」タブで指定されたロールアップ日に従って実行されます。
処理しない - オブジェクトは折りたたまれません。
期間の場合 - 指定された間隔内にあるすべてのオブジェクトが折りたたまれます。
クリア - 積み上げ日より前のすべてのオブジェクトが削除され、残高入力文書は作成されません。 このモードは情報レジスタでのみ使用できます。
「デフォルト設定を記入」ボタンを使用して、折りたたまれたオブジェクトの構成とデフォルトの折りたたみ方法を記入することができます。 この場合、次の設定が折りたたみ可能なオブジェクトに割り当てられます。
- すべてのドキュメントで、折りたたみモードは「今日まで」に設定されます。
- すべての累積およびアカウンティング レジスタに対して、「現在の」畳み込みモードが設定されます。
- 文書「レジスタエントリの調整」がレジストラではないすべての周期情報レジスタについては、畳み込みモードは「処理しない」に設定され、他のすべての周期情報レジスタについては「日付時点」モードが設定されます。
- すべての非周期情報レジスタに対して、コラプス モードは「処理しない」に設定されます。
以前に作成した折りたたみ設定を保存および復元することができます。「XML にアップロード」ボタンと「XML からロード」ボタンはこの目的に使用されます。
デフォルト設定を入力します。
ブックマーク 「残高を入力するための書類」:
この段階では、蓄積簿、情報、会計に従って残高を入力するための文書が生成されます。 作成されたドキュメントは、ロールアップ日の次の 1 秒後に検索されます。 ロールアップ日が 03/31/2009 23:59:59 の場合、ドキュメントは 04/01/2009 00:00:00 に作成されます。
残高を入力するための書類としては、「登記簿記調整票」と「業務(会計・税務会計)」という書類が使用されます。
残高入力伝票は移動を無効にして作成されます。 残高を入力するための文書には、「[基本ロールアップの処理により生成]」というテキストを含むコメントが含まれています。
レジスター/口座ごとに別個の残高入力文書が作成されます。 各レジスター/口座の残高入力ドキュメントの数は、「残高入力ドキュメントの行数」パラメータによって決まります (詳細については上記を参照)。
データベースを折りたたむ (ボタン 「崩壊基地」下部のコマンド バーにあります)。 この段階では、折りたたみ期間中のオブジェクトが削除されます。
このプロセスには長い時間がかかる場合があります。 データベースが縮小された後は、縮小期間中にドキュメントを変更したり再投稿したりすることは固く禁じられています。
この段階でエラーが発生し、オブジェクトの削除手順が中断され、完全に完了しなかった場合、次の状況が発生する可能性があることに注意してください。一部のレジスタでは、合計が無効のままになります。 これにより、一部のレジスタの合計を取得できなくなります。 合計が無効になっているレジスタのリストは、「合計が無効になっているレジスタ」タブで表示できます。 必要に応じて、同じタブで合計を有効にすることができます。
この記事では、と呼ばれるプロセスで使用されるアルゴリズムについて説明します。 1cベースの畳み込み。
ベースコンボリューション 1c(1Cデータベースの崩壊)は、1Cデータベースに蓄積されたデータを最適化するための手順です。 ユーザーエクスペリエンスの質を向上させるために、1C データベースは崩壊しつつあります。
1C データベースが崩壊した理由
データベースの折りたたみに関する理論的な問題を実際の例の観点から見てみましょう。 たとえば、今日は 2008 年 3 月 14 日です。 私は 1C データベースを使用しています。このデータベースは 2003 年 1 月 1 日から保守されています。 拠点を立ち上げて5年目になります。 プログラマーにとってデータベースを保守するのは困難です (要素数の増加によりシステムが複雑になります)。 また、データベースはユーザーにとって作業が困難です (プログラム速度)。
1C データベースを使用して作業を最適化するにはどうすればよいでしょうか?
プログラマーはデータを扱うのではなく、データ処理アルゴリズムを扱うため、一般にデータベースのサイズを気にしません。 大規模なデータベースを操作する場合、前の期間にドキュメントを再転記した後に順序を復元する必要がある場合や、期限が切れたすべてのドキュメントを再転記する必要がある場合を除き、データベースを管理するプログラマに問題が発生する可能性があります。一部の計算のアルゴリズムが変更されました。 したがって、データベースの最適化は、通常、データベース ユーザーの作業の質を向上させることを目的として実行されます。
データを操作するときの機能的特徴
1C データベースを使用するユーザーの機能は、次の 3 つのグループに分類できます。
- 一次データ入力。
- 入力されたデータの分析;
- 将来のデータの計画。
ユーザーの機能グループを見てみましょう。
- データを入力する人は、「昨日」の残高や売上高も必要ありません。 先月や前年のデータは言うまでもありません。
- データ アナリストには履歴データが必要です。 ただし、ここでは、どのようなデータが必要なのかを正確に明確にする必要があります。 これについては以下で説明します。
- データ プランナーには履歴分析の結果が必要です。 言い換えれば、このグループのユーザーのニーズには、過去の期間に蓄積されたデータも必要です。
1c データベース ロールアップのデータ詳細
分析と計画にどのデータが必要かを判断するには、まずデータの粒度を明確にする必要があります。 あらかじめ言っておきますが、分析や計画に必要なデータの詳細化が、1Cデータベース崩壊の問題を解決する鍵となります。
1C データベースのデータの詳細レベルは何ですか? これらに名前を付けることができます:
- 会計の勘定科目に転記します。
- 運用会計に移動を登録します。
- 書類。
- 1 日あたりの売上高 (週、10 年、月、四半期、半年、年)。
- 期間(日、週、10年、月、四半期、年)の開始時と終了時の残高。
効果的な分析と計画に必要な十分なレベルのデータ詳細が決定したら、データベースを折りたたむときのデータ圧縮の程度について話すことができます。
1 秒後のデータベース崩壊後の「圧縮」期間内のデータの操作
ある期間のデータが「崩れ」たり「圧縮」されたりすると、量的には一定量減っていることが分かります。 データ量が減少すると、特定のデータが永久に失われます。
必要が生じた場合、折りたたまれたデータにアクセスするにはどうすればよいですか? これは非常に重要な質問であり、1C データベースをロールアップする前に回答する必要があります。
例として、極端なケースを 2 つ挙げます。
ケース 1: 2008 年の任意の日に、財務ディレクターは、2005 年 3 月の買い手「Alpha」との相互決済の詳細なカードを表示できるようにしたいと考えています。
この状況では、転記レベル以下のデータの折りたたみ(圧縮)(レジスタの移動)が不可能であるため、1C データベースの折りたたみは不可能です。
例外は、データベースがまだロールアップされており、作業データベースでは、折りたたまれた期間のデータから作業期間の開始時の残高のみが残る作業方法と考えることができます。 この場合、企業には 2 つの従業員ベースがあります。
- 現在の操作に関するデータが入力される作業用データベース。
- 過去の期間の取引に関するデータを保存するアーカイブ データベース。
同時に、たとえば財務責任者は、実際には作業が停止された 2 番目のデータベースにアクセスできます。 また、財務責任者は、必要に応じていつでも「古い」データベースにアクセスして、過去の期間に必要なすべてのデータを取得できます。
ケース 2: 財務責任者は、2008 年の任意の日に、2005 年の第 3 四半期における企業のすべての倉庫施設のレンタル費用の額を調べられるようにしたいと考えています。 そして、より詳細な情報(たとえば、倉庫の家主との相互和解カード)は必要ありません。
この場合、1C データベースの畳み込みは次の方法で実行されます。
- 特別リクエストでは、「倉庫経費」項目で売上高を選択し、四半期ごとに詳細を示します。
- リクエストを受け取った四半期ごとに、新しい文書「業務」(またはその他の特別な文書)が作成され、その文書に「倉庫経費」項目の売上高が入力されます。 文書は記録され、投稿されます。
- 特別な処理により、項目「倉庫経費」の下に縮小期間のデータを入力したすべての文書が削除されます(データベースの縮小時に作成した特別な文書を除く)。
例外として、入金残高のみを作業期間の開始時に転送してベースをロールアップする作業方法も考えられます。 企業には 2 つの拠点 (「現役」と「老朽化」) があります。 そして、財務ディレクターは、たとえば、個人使用のために MS Excel で特別なプレートを作成します。 このタブレットでデータ分析と計画を実行します。 表には、分析対象期間に必要な財務指標の合計値を手動で入力します。 彼は分析のために「アーカイブ」データベースからデータを取得します。
標準 1C データベース畳み込みアルゴリズム
ほとんどの場合、データベースの折りたたみの方が一般的です。
- 処理により、「期首残高の入力」タイプの新しい文書が作成されます。
- クエリは、積み上げられる期間の終了時のすべての元帳勘定、元帳分析コード、およびその他の関連データ ストアの残高を選択します。
- リクエストで受け取ったデータは、「初期残高の入力」タイプの文書に入力されます。
- 文書は保存され、縮小期間の最終日に転記されます。
- 崩壊期間のすべての 1C ドキュメントが削除されます。
1C データベースを折りたたむ方法
したがって、1C データベースのデータを折りたたむには 2 つの方法があります。
- 縮小期間では、すべてのトランザクションが削除され、縮小期間の終了時に利用可能な初期残高のみが作業期間の開始時に入力されます。
- 最初の方法と同じですが、崩壊期間では、稼働期間の現在のモードで必要な指標に従って、必要な詳細レベルで売上高が残されます。 崩壊期間に残っている売上高を考慮して計算された残高は、営業期間の初めに転送されます。
処理は「管理」サブシステムの「サービス」ブロックにあり、ファイル情報ベースのサイズを削減し、システムの速度を向上させ、アーカイブと更新の時間を短縮することを目的としています。
重要!情報ベースの折りたたみは、ローカル操作モードでのみ使用できます。
調整とは、文書や登録簿を処理し、特定の年の初めに残高を形成するプロセスを指します。 情報ベースを折りたたむと、前の期間のドキュメントが削除対象としてマークされます。
ただし、標準処理を使用したデータベースのロールアップは、標準構成でのみ実行できることを理解する必要があります。 そうしないと、すぐには確認できないエラーが表示される可能性があります。 標準構成がない場合は、経験豊富な 1C プログラマーに連絡してデータベースを照合してもらうことをお勧めします。
畳み込み処理では次のことが行われます。
- 必要な日付の時点でのすべての口座/レジスターの残高「操作 (Infokraft レジスター)」を入力するための文書を作成します。
- 必要な日付より前にドキュメントに削除のマークを付けます。
重要!データベースのロールアップを実行する前に、次のことを行うことをお勧めします。
- 作業中のインフォベースのコピーでロールアップの予備テストを実行します。
- 成功したテストの結果に基づいてのみ、実用的な情報ベースの使用の可能性を決定できます。
情報ベースを折りたたむための段階的な手順:
- 情報セキュリティバックアップの作成: 「コンフィギュレーター」モードのメニュー項目「管理」-「情報データベースのアップロード」でデータベースに入る必要があります。
- ロールアップの前に、これらの構成オブジェクトに関するレポートを生成する必要があります。過去の期間のどの情報が将来の期間に必要になるかに関する情報です。 「フォーミュラ住宅・公共事業+会計」構成では、ロールアップ前後の会計台帳の残高チェックが処理の一つとして組み込まれているため、ロールアップ前の「売上高貸借対照表」レポートを生成する必要はありません。段階。
- 「管理」-「サービス」サブシステムから処理を開始します。 すでに作成されているプログラムのコピーに対してロールアップを実行する場合、「バックアップ コピーの作成」フラグを設定する必要はありません。 それ以外の場合は、IS バックアップ ディレクトリを指定する必要があります。
4.コンボリューションの設定。 この段階で、どの年の初めに残高が形成されるかが決定されます。 デフォルトでは、「データ禁止日の設定」フラグが選択されています。2017 年の初めに残高が生成された場合は、2016 年 12 月 31 日に設定されます。 すべての組織または 1 つの組織のみのデータベースをロールアップすることができます。
5.残基の形成。 この段階で、折り畳むオブジェクトの構成と折り畳む方法が決まります。 レジスタを使用した次のアクションが提供されます。
- 折りたたまない - オブジェクトは折りたたまれません。つまり、 すべての登録の移動は残り、登録文書には削除のマークが付けられません。
- 折りたたみ - 折りたたみ日より前のオブジェクトは折りたたまれます。つまり、 登録文書には削除対象のマークが付けられ、登録簿の移動には調整日現在のデータが含まれます。
- クリア - 積み上げ日より前のオブジェクトは削除され、残高入力文書は作成されません。 このモードは情報レジスタでのみ使用できます。
たとえば、デフォルトでは、「計算コメント」、「作業の種類別のアプリケーションの実行者」、およびその他のレジスタに対して「折りたたまない」に設定されています。つまり、プログラムはどのデータベースパラメータを保存する必要があるかをすでに分析しています。完全に折りたたむことができます。
次のステージに移行する際、前のステージ No.5 で対応するフラグが選択されていた場合、データ変更を禁止する日付が設定されます。 推奨設定に戻すことが可能です。
6.トランザクションの表示。 この段階で、2017 年 1 月 1 日の時点で生成された残高を開くことができ、トランザクションは 2016 年 12 月 31 日にデータベースに記録されます。 ボタンを使用して残高を調整したり、残高を入力するための新しい操作を作成したりすることもできます。 作成する"。
以下は、作成されたオペレーションのバリエーションです。 情報登録「建物サービス」:
7.検査。 この段階では、作成されたすべての残高入力ドキュメントが表示され、編集することができます。 情報や蓄積の個別レジスタの情報を表示することが可能です。 「詳細」ボタンを使用すると、情報を受け取りたいレジスタの選択フラグを設定または削除できます。
1C-IzhTiSi からのロールアップの特徴は、作業範囲全体が顧客の技術的枠内、つまり誰もデータベースを操作していない時間内に収まることです。
1C 情報ベースの折りたたみは、情報ベースのボリュームを削減し、システムのパフォーマンスを向上させるために使用されます。 ロールアップ プロセス中に、古いデータが削除され、ロールアップ日の時点の残高が入力されます。
1C-IzhTiS ソリューションと標準の 1C ロールアップ メカニズムの主な違いは、データ変更操作が可能な限り短い時間 (たとえば、技術ウィンドウのサイズが 2 ~ 3 時間を超えない場合) で実行されることです。
1 回のセッションで完全な縮小を実行できない場合、このテクノロジーを使用すると、複数の技術ウィンドウで個々のオブジェクトとオブジェクトのグループの両方に対して、プロセスを部分的に実行できます。
1C 情報ベースのロールアップが必要なのは誰ですか
1C:Enterprise を長期間使用している企業の場合:
- システムの動作が通常より遅くなったことに気付いた場合 - レポートの生成に時間がかかるなど。
- 大量の古くて無関係な情報が情報データベースに蓄積されている場合。
ロールアップするとき
畳み込みは次の場合に実行する必要があります。
- データベースのボリュームが 50 GB を超えています。
- データベース内の記録は 5 年以上維持されています。
- データベースのサイズにより、バックアップの作成が困難になります。
- 長期間更新されていなかった構成を更新する前。
1C情報データベースの崩壊過程の整理
一般的なロールアップ プランは、次のようないくつかの段階で構成されます。
1. デモロール: 5-10 営業日
デモを折りたたむと、折りたたまれた情報ベースの最終的なサイズとプロセス全体に必要な時間を見積もることができるほか、後続の段階で修正されるエラーを特定することもできます。 この段階は、当社側と顧客側の両方で実行できます。