1sからxmlへのドキュメントのアップロード。 XMLファイルの生成。 サードパーティアプリケーションの簡単なアップロード。 xmlでデータをアンロードするプロセス。 XMLへのデータのエクスポート

2018-11-15T19:32:35 + 00:00

ユニバーサル処理「XMLデータのアンロードとロード」は、インフォベースデータのXML形式のファイルへの完全または部分的なアンロードを実行します。 その後、このファイルは同じ処理を使用してインフォベースにロードすることができます。 アップロードファイルの形式は、ヘッダー部分による交換計画に従ってアップロード時に作成されるファイルの形式とは異なります。

処理は、データがアップロードされたインフォベースとデータがアップロードされたインフォベースが同種である場合(構成が同一で、データが異なる場合があります)、またはアップロードされたすべてのオブジェクトの構成がほぼ完全に同一である場合にのみ使用できます。詳細のタイプ、表形式の部分、「主要な」メタデータオブジェクトのプロパティなど。

この処理を使用すると、たとえば、完全または部分的に作成できます。 バックアップデータ、データ交換 情報ベース、および失敗したインフォベースを復元するための補助ツール。

処理は、期間ごとに選択を設定する機能を備えたデータアップロードをサポートします。 また、XMLを介して交換するときに、オブジェクトの無効な文字をチェックすることも実装されています。

よろしくお願いいたします。(教師および開発者)。

組織では、1C:Enterpriseプラットフォームに基づくソリューションだけでなく、他のソフトウェアシステム(Galaktika、Parus、SAPなど)でもアカウンティングを維持できます。 この場合、2つのアプリケーションを統合するタスクが表示されます。

たとえば、一部のアプリケーション(「X」と呼びましょう)は、構成ドキュメントのリストを読み取る必要があります。 このような問題を解決することの実際的な利点については説明しません。このような状況で最も便利で普遍的な方法は、XML形式のドキュメントのリストをアップロードすることです。

ほとんどのアプリケーションがこの形式で動作できるため、この形式を使用した交換は普遍的です。 構成ドキュメントのリストを1C:EnterpriseからXMLファイルにアップロードする方法を考えてみましょう。

XMLにエクスポート

それでは、主なことに移りましょう。 ドキュメントメタデータのリストを繰り返し処理し、XMLファイルでリストを生成する必要があります。 次のスクリーンショットは、XMLファイルを生成するためのアルゴリズムを示しています。

CreateXML()関数のエクスポート //一時ファイルの名前を取得しますパス=GetTemporaryFileName(); //クラス「WriterXML」を初期化しますエントリ=新しいEntryXML; //書き込み用の一時ファイルを開きます- 8 " ) ; //XMLファイル宣言を記述します記録。 WriteDeclarationXML(); // 書く。 WriteElementStart( " DocumentsConfigurations" ) ; //最初の要素 //ファイル生成日を持つ最初の要素の属性記録。 WriteAttribute( "生成された"、Format(CurrentDate()、 "DF = yyyy-MM- ddThh:mm:ss; DLF = DT" ) ) ; //各構成ドキュメントの要素を記述します。 テキストにドキュメントの名前を入れます。メタデータの各ドキュメント。 ドキュメントサイクルレコード。 WriteItemStart( "ドキュメント"); 記録。 WriteText(Doc。Name); 記録。 WriteEndElement(); EndCycle; //最初の要素の書き込みを終了します記録。 WriteEndElement(); 記録。 選ぶ() ; //ファイルを閉じます //ファイルのバイナリデータを取得し、一時ストレージに配置します BinaryData = New BinaryData(Path); アドレス=PlaceInTempStorage(BinaryData、New UniqueIdentifier); 差出人住所; //ストレージ内のファイルのアドレスを返します EndFunctions

作成された各要素は正しく完了する必要があります。 「WriteStartElement()」メソッドを実行した後、「WriteEndElement」メソッドを実行する必要があります。そうしないと、XMLファイルの構造が正しくなくなります。

XMLファイルを作成するための一般的なテンプレートは、次のシーケンスです。

// 1.「XML書き込み」クラスを初期化しますエントリ=新しいEntryXML; // 2.書き込み用の一時ファイルを開きます記録。 OpenFile(Path、 "UTF - 8 " ) ; // 3.XMLファイルの宣言を記述します記録。 WriteDeclarationXML(); //// 4.++XMLファイルの内容を書き込みます記録。 WriteElementStart( "ElementXML"); 記録。 WriteEndElement(); //-XMLファイルの内容を書き込みます // 5.ファイルを閉じます記録。 選ぶ() ;

これらの5つの手順により、ほぼすべてのXMLファイルが作成されます。

この例では、作成されたファイルはバイナリデータに変換され、「CreateXML」関数が呼び出された場所に戻されます。 その後、このファイルをファイルシステムに書き込むことができます。

上のスクリーンショットでアップロードされたファイルの例を見ることができます。

サードパーティアプリケーション

たとえば、サードパーティのアプリケーションでXMLファイルを読み取る方法を示すために、.NETFrameworkでアプリケーションを作成しました。

プログラムは作成されたファイルを読み取り、リストの形式でドキュメントを表示します。

自分で試すことができます。アプリケーションは、記事の最後にあるリンクからダウンロードできます。

汎用性

XML形式は、1C:Enterpriseプラットフォーム上のアプリケーションソリューション間のデータ交換のほとんどの構成で使用されます。 もう1つの一般的に使用される通信方法は、COM接続です。 XMLを使用すると、ユニバーサルと呼ばれるに値するほとんどすべてのアプリケーションと交換できます。

ダウンロード:

XMLファイルリーダーアプリケーション。

XMLファイルの形成を処理します。

データ転送はどの会計システムでも非常に重要なプロセスであり、1C8.3および8.2プラットフォームも例外ではありません。 以下では、あるシステムから同様の構成を持つ別のシステムにデータを最も簡単に転送する方法について説明します(異なる構成の場合は、プログラマー用のツールを使用できます-または)。

アクションが必要になる前に、変更を元に戻すことはできません。

1C8.3から1C8.3アカウンティング3.0にデータを転送する最も簡単で便利な方法は、XML形式のデータのアップロードとダウンロードの処理を使用することです(ダウンロード-8.2または1C 8.3またはITSの場合)。 処理は普遍的であり、あらゆる構成に適しています。

詳細には立ち入りませんが、検討します ステップバイステップの説明商品の最も単純な転送の例で、この処理を使用したデータ移行について。

XMLへのデータのエクスポート

まず、ソースデータベース(商品をアンロードする場所)で処理を開き、インターフェイスを確認しましょう。

267の1Cビデオレッスンを無料で入手:

すぐに「ファイル名」フィールドに入力する必要があります-このパスは作成します 新しいファイルレシーバーデータベースにロードするデータ。 少し下の表形式の「アンロードするデータ」で、データベースからアンロードするデータを選択する必要があります。

左側の表形式のセクションからオブジェクトを選択した後、右側の表形式のセクションで選択を適用できます。

この例では、「Rake」という名前のすべての製品をアンロードします。

すべての設定が入力されたら、データをアップロードできます。 これを行うには、[データのアップロード]ボタンをクリックします。

xmlから1s8.3へのデータのロード

データはソースデータベースからアンロードされたので、宛先データベースに転送する必要があります。

これを行うには、データをロードするデータベースですでに処理を開始し、[ロード]タブに移動し、ディスクにアップロードされたファイルを選択して、[データのロード]ボタンをクリックする必要があります。

この例は、1Cプラットフォーム上の同一の構成間でデータを転送する場合にのみ適しています。 交換のメカニズムを理解するために、プログラマーのために、記事を書きました-。

動作モード

UnloadingUploadingXML82データの処理は、次の2つの操作モードを実装します。アンロード(アンロードファイルの作成) ユーザー指定データ)およびダウンロード(同じ名前のモードで作成されたアップロードファイルを読み取り、それに含まれるデータを書き込みます)。 モードは、[モード]フィールドで選択することによって設定されます。

特定のモードを起動する([実行]ボタンを押す)前に、[ファイル名]フィールドに手動で入力するか、このフィールドを選択するためのボタンと標準のファイル選択ダイアログを使用して、アップロードファイルの名前を指定する必要があります。

ダウンロードモードでは、レジスタを書き込むときに合計の使用を編集することができます。これは、ダウンロード速度に影響を与える可能性があります。 「合計を無効にする」ボタンと「合計を有効にする」ボタンは、「データの読み込み中に合計の使用を編集する機能を有効にする」フラグが設定されている場合に使用でき、データの読み込み時に合計を使用するモードを手動で制御するために使用されます。 **処理の適用条件**

処理は、データがアップロードされたインフォベースとデータがアップロードされたインフォベースが同種である場合(構成が同一で、データが異なる場合があります)、またはアップロードされたすべてのオブジェクトの構成がほぼ完全に同一である場合にのみ使用できます。詳細の種類、表形式の部分、「主要な」メタデータオブジェクトのプロパティなど。 これらの制限により、処理は主に同種のIB間の交換を目的としていることに注意してください。

アップロードファイルの形式は、ヘッダー部分による交換計画に従ってアップロード時に作成されるファイルの形式とは異なります。 データ(ディレクトリの要素、レジスタレコードのセットなど)をアンロードするために、処理は交換計画に従ってアンロードするのと同じXMLシリアル化メカニズムを使用します。この部分では、ファイル形式は同じです。

荷降ろしの構成の決定

処理により、インフォベースデータのファイルへの完全および部分的なアンロードの両方を実行することができます。 アップロードされたデータの構成は、データをアップロードできるメタデータオブジェクトを表示するツリー列のチェックボックスを設定することにより、ダイアログで構成されます。 フラグの追加の列「必要に応じて」は、このタイプのオブジェクトを「参照によって」アンロードする必要性を設定します。 つまり、[必要な場合]列でのみチェックボックスがオンになっている場合、そのようなオブジェクトのデータは完全にはアップロードされませんが、アップロードファイルをダウンロードするインフォベースで参照整合性を維持するために必要な範囲でのみアップロードされます。

フォームを開くとき、処理はすべてのオブジェクトを参照してアンロードのサインを設定します。これにより、 参照整合性アンロードされたインフォベースフラグメント。

「リンクでアップロードしたオブジェクトを定義」ボタンをクリックすると、処理により、完全アップロードフラグが設定されたオブジェクトに含めることができるデータリンクが分析され、リンクでアップロードする必要があることを示すフラグ列が自動的に入力されます。 オブジェクトにすでに完全なアンロードフラグが設定されている場合、参照によるアンロードフラグは設定されません。

可能なアプリケーション

この処理を使用すると、たとえば、データの完全または部分的なバックアップを作成したり、インフォベース間でデータを交換したり、問題のあるインフォベースを復元するための補助ツールとして使用したりすることができます。

ソーシャルビジネスネットワークのWebサイトで会社のWebサイトを作成する場合、1Cバージョン8.2プログラムからオンラインストアに商品やサービスをアップロードする機会があります。 これを行うには、外部処理「XMLデータのアップロード」を使用する必要があります。 この処理必要に応じて、ITSディスクにあります。

1Cプログラムからサイトにアップロードできる製品は100個までです。

処理を使用するには、1Cプログラムを開く必要があります。メインメニューで、ボタンをクリックします。 "ファイル"、 選択する "開いた"処理へのパスを指定します。 次に、開いたウィンドウで、フィールドで "ファイル名"、XMLファイルがアップロードされる名前とフォルダを指定します。 その後、画面の左側で、アンロードする必要があるものを指定する必要があります。 最後に、ボタンを押します 「データのアップロード」。 オンラインストアにダウンロードするには 個人アカウント XMLダウンロードボタンをクリックして、1Cからアップロードされたファイルへのパスを指定する必要があります。 統合は、電子データ交換のためのロシアおよび国際標準とプロトコルに基づいて構築されています。

1 。処理を使用するには、1Cプログラムを開く必要があります。メインメニューで、を押します。 "ファイル"、 選択する "開いた"処理へのパスを指定します。

2. その後、開いたウィンドウで、フィールド "ファイル名"、XMLファイルがアップロードされる名前とフォルダを指定します。

3. 次に、画面の左側で、アップロードする必要があるものを指定する必要があります。

4 。 最後に、ボタンを押します 「データのアップロード」.