最近差點就GET到一項新技能,,,,,, 沒錯,是 "差點"
近日一直在各種測試Primavera P6與Primavera Unifier資料的打通,講實在的,其實這可以開發者自己通過P6 和Unifier WebService 來打通,但好就好在Oracle 有一套非常适用于兩者(其實還可以同于prime,sap,ebs)的資料交換工具:Gateway,是以其資料交換的工作就變成Gateway配置來做了,
好吧,回到重心,這次要說的其實是在交換WBS時遇到的異常,先簡單介紹下環境:
P6:Primavera P6 EPPM 18.8.9.0 (更新2019-07 最新patch)
Unifier:Primavera Unifier 18.8.9.0 (更新2019-06 最新patch)
Gateway:Primavera Gateway 18.8.0 (不更新更新檔,最新的18.8.5.0及18.8.6.0 均無法實作 gatewayapi)
問題介紹:( 已發至官方 Community: https://community.oracle.com/thread/4275805 ,後續有新消息再更新) 。
其實在傳遞WBS/CBS前,其Acitivity已經成功打通,P6的計劃更新已經可以傳遞到unifier的 acitivity上來了,但目前主要的是wbs,考慮到p6pu傳遞的邏輯還是基于業務對象着步實作,在gateway的項目資料流彙總中也是分開配置的。
如下圖gateway中 的 acitivity,cbs,project,wbs
那麼問題來了,前面的acitivity已經實作沒問題的了,那麼wbs 不也是一樣勾選嗎 ?NEXT
gateway中,p6的 wbs 是在unifier 中會形成 cbs ?(同步模式可以是create,update,both)
(貌似無疑,可以國外的一篇文章:https://proventuresindia.com/blog/primavera-p6-and-unifier-synchronization-v17/ )
執行同步,Unifier Request 的WBS均為P6建立的,沒差了,gateway已經成功擷取,NEXT
BUT,最終更新到Unifier時還是出現了 error 707 , 這問題似乎沒有在knowledge和community提到,難道我哪裡有遺漏的
BUT,反複測試,問題依舊。
在來一段 error detail , 提示的是provider的異常,不過,不過,怎麼可能呢,畢竟activity已經實作了 ....
com.oracle.pgbu.pdi.provider.ProviderException: Unifier return code is 707. [null]
at com.oracle.pgbu.pdi.unifierprovider.project.UnifierProjectSaveStep.save(UnifierProjectSaveStep.java:277)
at com.oracle.pgbu.pdi.service.jobs.JobSimulator.executeSaveStep(JobSimulator.java:934)
at com.oracle.pgbu.pdi.service.jobs.JobSimulator.executeSingleFlow(JobSimulator.java:495)
at com.oracle.pgbu.pdi.service.jobs.JobSimulator.execute(JobSimulator.java:394)
at com.oracle.pgbu.pdi.service.jobs.JobSimulator.run(JobSimulator.java:208)
at com.oracle.pgbu.framework.akka.jobs.ServiceExecutorWrapperActor.wrappedReceive(ServiceExecutorWrapperActor.java:36)
at com.oracle.pgbu.framework.akka.metrics.UntypedActorWithMetrics.processMessage(UntypedActorWithMetrics.java:39)
at com.oracle.pgbu.framework.akka.metrics.UntypedActorWithMetrics.onReceive(UntypedActorWithMetrics.java:33)
at akka.actor.UntypedActor$$anonfun$receive$1.applyOrElse(UntypedActor.scala:165)
at akka.actor.Actor$class.aroundReceive(Actor.scala:497)
at akka.actor.UntypedActor.aroundReceive(UntypedActor.scala:95)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
at akka.actor.ActorCell.invoke(ActorCell.scala:495)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
at akka.dispatch.Mailbox.run(Mailbox.scala:224)
at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
附上官方配置指引(Version 17.x 但不影響操作)
https://docs.oracle.com/cd/E80548_01/English/User_Guides/unifier_setup/gateway_unifier_setup.pdf
目前還在折騰,歡迎大家一起探讨 。
想了解更多有關資訊可mail我哈: [email protected], 或微信/電話18620728408