仕事のカタマリにようこそ!  [ ログイン | ユーザ登録 ]
フォーラムから検索

機械用3D-CAD SolidWorks非公認のユーザサイトです
 
 
Web katamari.org
仕事のカタマリ
ホーム リンク集 ダウンロード フォーラム(掲示板) FAQ お問い合わせ









フォーラムニュース: 質問、相談カテゴリに「SolidWorks操作方法」に関するフォーラムを追加しました。(2003/11/27)
いらっしゃい、 ゲストさん. まずはこちら→ ログイン または 登録. 2024/11/23 - 11:37:29
ホーム ヘルプ 検索 ログイン 登録

仕事のカタマリ 掲示板  |  SolidWorks一般  |  SolidWorksのカスタマイズ (議長: webmaster)  |  トピック: PDMW API のログイン 前のトピック 次のトピック
ページ: [1] Page Bottom 返信 返信のお知らせ Print 
   著者  トピック: PDMW API のログイン  (閲覧数 3716 回)
ZAKRELLO
Jr. メンバー
**

オフライン

投稿: 12



I'm a llama!

プロファイルを見る
PDMW API のログイン
« 投稿日: 2010/01/21 - 13:23:35 »
引用して返信

SolidWorksのカスタマイズをすることとなり、困ったあげくここでお世話になろうと
思い投稿させていただきました。

SolidWorks Workgroup PDM API の PDMWConnectionでログイン(Login)が出来ません。
PDMWConnectionのLoginメソッドを実行すると”An unknown network error occurred. (40)”
のエラーメッセージが帰ってきます。

問題解決のためにアドバイスいただけると助かります。

---------------------------------------------------------------------
    Dim connection As PDMWConnection

    connection = CreateObject("PDMWorks.PDMWConnection")
    connection.Login(”User", "Password", "Server")    '<== ここでエラー
---------------------------------------------------------------------

開発環境
VB.NET 2005
SolidWorks 2009 SP0.0
SolidWorks Enterprise PDM 9.0

その他
・ サーバー/クライアント(プログラム実行PC)は同一PCです。
・ "Server"には、PC名、IPアドレス、"localhost"を指定してみましたが、
  いずれも同じ結果(エラー)になりました。
  pingは PC名、IPアドレス、"localhost"のいずれも通ります。
・ ファイヤーウォールは無効にしています。
・ Windows エクスプローラでボルト(Vault)にアクセスするときにログイン画面がでますが、
  ”User", "Password"でログインできています。
・ SolidWorks Enterprise PDM API のLoginは出来ました。
---------------------------------------------------------------------
    Dim vault As EdmVault5
    vault = New EdmVault5
    vault.Login("User", "Password", "VaultName")
---------------------------------------------------------------------


よろしくお願いいたします。
議長に報告する   記録済み
Makoron
カタマリの王様!?
*****

オフライン

投稿: 1277



SW2011SP5.0

プロファイルを見る
Re:PDMW API のログイン
« 返信 #1 投稿日: 2010/01/28 - 11:58:27 »
引用して返信

ZAKRELLOさん、始めまして。

しばらく前の書き込みなので、もう解決しているかもしれませんが、書き込み内容を読んでいると、
Enterprise PDM のサーバーにWorkgroup PDM API でアクセスしようとしている様に感じました。
当然、別のシステムなので、利用できない事が正しい動作です。
(まちがっていたら、ごめんなさい。)

もし、Workgroup PDM のサーバーとEnterprise PDM のサーバーの両方があって
どちらのPDMも WindowsやSolidWorksからの操作が出来て、
APIからの操作だとWorkgroup PDM の方だけ出来ない、ということであれば
何らかの環境によるものか、APIのバグなどが考えられると思います。

私の環境ではWorkgroup PDM を使用していないので、テストできないのですが、
ネットワークに関連するコードをのせておくので、適当に組み込んで試してみてください。

--------------------------------------------------------------------
    Private Sub Test()
        Dim ServerName As String = "Server"

        Dim Msg As String = ""
        Msg &= "***** PINGテスト *****" & vbCrLf
        Msg &= PingTest(ServerName) & vbCrLf
        Msg &= vbCrLf
        Msg &= "***** WorkgroupPDMの接続テスト *****" & vbCrLf
        Msg &= TcpTest(ServerName, 20000) & vbCrLf
        Msg &= TcpTest(ServerName, 30000) & vbCrLf
        Msg &= TcpTest(ServerName, 40000) & vbCrLf
        Msg &= TcpTest(ServerName, 80) & vbCrLf
        Msg &= vbCrLf
        Msg &= "***** EnterprisePDMの接続テスト *****" & vbCrLf
        Msg &= TcpTest(ServerName, 1433) & vbCrLf

        MessageBox.Show(Msg)
    End Sub


    ' PINGのテスト
    Private Function PingTest(ByVal HostName As String) As String
        Dim Result As String = ""

        Dim objPing As New System.Net.NetworkInformation.Ping()
        Try
            Dim Reply As System.Net.NetworkInformation.PingReply = objPing.Send(HostName)
            If Reply.Status = System.Net.NetworkInformation.IPStatus.Success Then
                Result = "PINGテスト OK"
            Else
                Result = "PINGテスト Error!"
            End If
        Catch ex As Exception
            Result = "PINGテスト Error! (" & ex.Message & ")"
        End Try
        objPing.Dispose()

        Return Result
    End Function


    ' TCP接続のテスト
    Private Function TcpTest(ByVal HostName As String, ByVal PortNumbet As Integer) As String
        Dim Result As String = ""

        Dim ObjTcpConnection As System.Net.Sockets.TcpClient = Nothing
        Try
            ObjTcpConnection = New System.Net.Sockets.TcpClient(HostName, PortNumbet)
            Result = "TCP接続 OK (" & HostName & ":" & PortNumbet & ")"
            ObjTcpConnection.Close()
        Catch ex As Exception
            Result = "TCP接続 Error! (" & HostName & ":" & PortNumbet & ")"
        End Try

        Return Result
    End Function
--------------------------------------------------------------------
議長に報告する   記録済み
ZAKRELLO
Jr. メンバー
**

オフライン

投稿: 12



I'm a llama!

プロファイルを見る
Re:PDMW API のログイン
« 返信 #2 投稿日: 2010/01/28 - 20:46:39 »
引用して返信

Makoronさん、はじめまして。
そして、回答ありがとうございます。

Enterprise PDM と Workgroup PDM が違うものだとの認識がありませんでした。
こちらでも、Workgroup PDMのサーバーは構築されていませんでした。
SolidWorksのカスタマイズにたずさわって間もなく、システムの理解が不十分でした。

Workgroup PDM環境がないので検証できませんが、、
「別のシステムなので、利用できない」と言うことで落ち着きたいと思います。

Makoronさん、お時間割いていただき、ありがとうございました。
的確なアドバイスに感謝します。


ちなみに、「ネットワークに関するコード」を組み込んだ結果です。

***** PINGテスト *****
PINGテスト OK

***** WorkgroupPDMの接続テスト *****
TCP接続 Error! (Server:20000)
TCP接続 Error! (Server:30000)
TCP接続 Error! (Server:40000)
TCP接続 OK (Server:80)

***** EnterprisePDMの接続テスト *****
TCP接続 Error! (Server:1433)
議長に報告する   記録済み
Makoron
カタマリの王様!?
*****

オフライン

投稿: 1277



SW2011SP5.0

プロファイルを見る
Re:PDMW API のログイン
« 返信 #3 投稿日: 2010/01/28 - 21:01:37 »
引用して返信


引用:

Enterprise PDM と Workgroup PDM が違うものだとの認識がありませんでした。
こちらでも、Workgroup PDMのサーバーは構築されていませんでした。
SolidWorksのカスタマイズにたずさわって間もなく、システムの理解が不十分でした。

Workgroup PDM環境がないので検証できませんが、、
「別のシステムなので、利用できない」と言うことで落ち着きたいと思います。

Makoronさん、お時間割いていただき、ありがとうございました。
的確なアドバイスに感謝します。

どういたしまして。
私も原因がはっきりしてスッキリしました!

ちなみにですが、どの様なカスタマイズを行いたかったのでしょうか?
差し支えなければ、教えていただけますか?
(私はEnterprisePDMのカスタマイズの方にも、かなり首を突っ込んでしまったのでそれなりにお答えできると思います。)


引用:

ちなみに、「ネットワークに関するコード」を組み込んだ結果です。

***** EnterprisePDMの接続テスト *****
TCP接続 Error! (Server:1433)

あれれ〜
EnterprisePDMは動いているのですよね?
Windowsからボルトフォルダを開いてログインできます?
議長に報告する   記録済み
hisa
カタマリの王様!?
*****

オフライン

投稿: 507



PANDA-Z!!

プロファイルを見る WWW
Re:PDMW API のログイン
« 返信 #4 投稿日: 2010/01/29 - 11:59:50 »
引用して返信

今年初の書き込みです


引用:
ちなみに、「ネットワークに関するコード」を組み込んだ結果です。

***** EnterprisePDMの接続テスト *****
TCP接続 Error! (Server:1433)

あれれ〜
EnterprisePDMは動いているのですよね?
Windowsからボルトフォルダを開いてログインできます?


SQL ServerのTCP/IPが有効になっていないor違うポート番号を指定しているとかですかね
最近ちょこっとSQLに関するお勉強をしたので、なんとなく・・・

有効にするには、SQL Server 構成マネージャから出来ます。
議長に報告する   記録済み
ZAKRELLO
Jr. メンバー
**

オフライン

投稿: 12



I'm a llama!

プロファイルを見る
Re:PDMW API のログイン
« 返信 #5 投稿日: 2010/01/29 - 14:16:50 »
引用して返信

Makoronさん、こんにちは
hisaさん、はじめまして

引用:
ちなみにですが、どの様なカスタマイズを行いたかったのでしょうか?
差し支えなければ、教えていただけますか?
(私はEnterprisePDMのカスタマイズの方にも、かなり首を突っ込んでしまったのでそれなりにお答えできると思います。)


カスタマイズは
ざっくり表現すると・・
 図面(slddrw)ファイル内 図面ビューでアセンブリとその構成部品のカスタムプロパティを取得
 取得したデータを、表にして図面(slddrw)ファイル内に挿入
 取得したデータを、図面(slddrw)ファイル内のシートフォーマット内に注記で表示
 できた図面(slddrw)ファイルを画像ファイル(bitmapなど)でファイルに保存
 ユーザを確認して機能に制限をつける(PDMのAPIはこの辺で使用予定)
やりたいことはこんな感じです

引用:
あれれ〜
EnterprisePDMは動いているのですよね?
Windowsからボルトフォルダを開いてログインできます?


Windowsからボルトフォルダを開いてログインできています。

引用:
SQL ServerのTCP/IPが有効になっていないor違うポート番号を指定しているとかですかね


SQL Server 構成マネージャからSQL ServerのTCP/IPを有効にしたら
***** EnterprisePDMの接続テスト *****
TCP接続 OK (Server:1433)
になりました。

頼ってばかりもいけないのですが、
心強い方々にアドバイスいただけてほんと、助かります
ありがとうございます。
議長に報告する   記録済み
Makoron
カタマリの王様!?
*****

オフライン

投稿: 1277



SW2011SP5.0

プロファイルを見る
Re:PDMW API のログイン
« 返信 #6 投稿日: 2010/02/16 - 14:50:25 »
引用して返信


引用:
カスタマイズは
ざっくり表現すると・・
 図面(slddrw)ファイル内 図面ビューでアセンブリとその構成部品のカスタムプロパティを取得
 取得したデータを、表にして図面(slddrw)ファイル内に挿入
 取得したデータを、図面(slddrw)ファイル内のシートフォーマット内に注記で表示
 できた図面(slddrw)ファイルを画像ファイル(bitmapなど)でファイルに保存
 ユーザを確認して機能に制限をつける(PDMのAPIはこの辺で使用予定)
やりたいことはこんな感じです

「カスタムプロパティ取得」スレッドにサンプルの情報を載せたので、多少は参考になると思います。
ただ、このカスタマイズってボルトに追加した後に操作するとしたら、
PDMのAPIで、チェックインやチェックアウトを行う必要がありそうな気もします。
また、「ユーザの制限」とあるので、PDMのアドインプログラムで実現するのも良いかもしれないと感じました。
たとえば、右クリックメニューに「構成一覧表作成」が追加されて、
実行するとZAKRELLOさんが考えている処理を行って、チェックインやステータス変更まで行う。
なんていうものを作ると良いかも。
議長に報告する   記録済み
ZAKRELLO
Jr. メンバー
**

オフライン

投稿: 12



I'm a llama!

プロファイルを見る
Re:PDMW API のログイン
« 返信 #7 投稿日: 2010/02/26 - 14:05:27 »
引用して返信

Makoronさん

こんにちは。いつもお世話になっております。

引用:
PDMのアドインプログラムで実現するのも良いかもしれないと感じました。



カスタマイズを検討し始めたころ、今もですが知識が乏しく
PDMのアドインにして実現出来るのか?とかイメージすらできませんでした。

こちらの都合ですが、かけられる時間や予算の制限などもありまして、、、

今回はPDMのアドインにはしなく、ユーザーさんがslddrwファイルを開いてメニューから
コマンド実行していただく方法にしました。ユーザーさんはファイルを修正した認識があるから
チェックインはユーザーさんにお任せです。

PDMへアドイン化は次のPhaseで検討したいです(次回があればですが・・・)。
アドバイスありがとうございます!
議長に報告する   記録済み
ページ: [1] Page Top 返信 返信のお知らせ Print 
仕事のカタマリ 掲示板  |  SolidWorks一般  |  SolidWorksのカスタマイズ (議長: webmaster)  |  トピック: PDMW API のログイン 前のトピック 次のトピック
ジャンプします: