标签: peoplesoft

在Oracle SQL表中更新日期

我试图更新SQL表中的日期.我正在使用Peoplesoft Oracle.当我运行此查询时:

Select ASOFDATE from PASOFDATE;
Run Code Online (Sandbox Code Playgroud)

我得到4/16/2012

我试过运行这个查询

UPDATE PASOFDATE SET ASOFDATE = '11/21/2012';
Run Code Online (Sandbox Code Playgroud)

但它不起作用.

有谁知道如何将日期更改为所需的日期?

sql oracle date peoplesoft

25
推荐指数
2
解决办法
31万
查看次数

PeopleSoft提供标准Web服务API?

我正在调查通过Web服务将第三方Web应用程序与PeopleSoft集成.我对PeopleSoft并不熟悉.经过一些初步调查后,似乎为了将任何PeopleSoft功能公开为Web服务,您必须在PeopleTools模块的Integration Broker组件中进行一些相当大的配置.您似乎可以使用"服务操作"和相关的"处理程序"定义内部PeopleSoft服务,也可以为现有的"组件接口"创建PeopleSoft服务.然后,您必须将PeopleSoft服务公开为Web服务.

是否有适用于PeopleSoft系统的标准,默认,开箱即用的Web服务,或者您是否始终需要完成在Integration Broker中定义它们的步骤?

在查看具有标准Web服务API的Salesforce之类的系统之后,似乎PeopleSoft可能会有类似的东西,但我找不到它.我是否正确认为集成代理是唯一的方法,或者我只是不知道某些标准的Web服务API将基本的PeopleSoft功能公开为Web服务?

web-services peoplesoft

11
推荐指数
1
解决办法
1万
查看次数

SOAP返回数据,但C#表示null响应

我的C#应用​​程序不会给我任何东西,但SOAP调用的结果为null.

我们已经使用SOAP Web服务公开了一些PeopleSoft ERP数据.

我从Visual Studio 2012 ASP.NET C#应用程序访问此SOAP服务.我有一个名为CampusDirectoryService的服务引用,使用ERP生成的WSDL构建.

这是C#代码:

var service = new CampusDirectoryService.TEST_PortTypeClient();
var input = new CampusDirectoryService.InputParameters();
input.First_Name = FirstNameBox.Text;
input.Last_Name = LastNameBox.Text;
var returnData = service.TEST_OP(input);
Run Code Online (Sandbox Code Playgroud)

问题returnData是始终为空.通过Wireshark,我确认我实际上是通过数据获得有效的SOAP响应.returnData不应该为空.

我也通过soapUI确认了SOAP服务的正确有效结果.提交.NET发送的完全相同的SOAP请求(我将其从Wireshark中复制出来),我得到了预期的结果.

这是SOAP请求:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
  <s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <InputParameters xmlns="http://xmlns.oracle.com/Enterprise/Tools/schemas">
      <Last_Name xmlns="">cambre</Last_Name>
      <First_Name xmlns="">aren</First_Name>
    </InputParameters>
  </s:Body>
</s:Envelope>
Run Code Online (Sandbox Code Playgroud)

这是SOAP响应,ReturnID元素内部的一些内部数据被混淆或删除:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   <soapenv:Body>
      <root xmlns="http://peoplesoft.com/rootResponse">
         <ReturnID>
            <PRF_Name>Cambre,Aren</PRF_Name>
            <Camp_Email>valid@email.com</Camp_Email>
         </ReturnID>
      </root>
   </soapenv:Body>
</soapenv:Envelope>
Run Code Online (Sandbox Code Playgroud)

方法的返回类型TEST_OPCampusDirectoryService.rootReturnID[]. …

c# xml soap web-services peoplesoft

9
推荐指数
1
解决办法
2万
查看次数

用于从日期中提取年份的SQL查询

我正在尝试创建一个只从选定日期获取年份的查询.即select ASOFDATE from PSASOFDATE;回归11/15/2012,但我只想要2012.我怎么才能得到这一年?我知道YEAR可以使用该功能,但我不知道如何.

sql oracle toad peoplesoft

8
推荐指数
3
解决办法
13万
查看次数

从PeopleSoft获取数据

我们有一个PeopleSoft安装,我正在构建一个单独的Web应用程序,需要从PeopleSoft数据库中提取数据.Web应用程序将位于与PeopleSoft不同的服务器上,但是位于同一内部网络中.

我有什么选择?

peoplesoft

7
推荐指数
2
解决办法
7792
查看次数

如何使用有效日期数据加快对大型数据仓库表的查询?

所以我在查询一些非常大的表格.它们如此之大的原因是因为PeopleSoft每次对某些数据进行更改时都会插入新记录,而不是更新现有记录.实际上,它的事务表也是一个数据仓库.

这需要在其中嵌套选择的查询,以获取最新/当前行.它们都是有效的,并且在每个日期内(施放到一天)它们可以具有有效的序列.因此,为了获得当前记录user_id=123,我必须这样做:

select * from sometable st
where st.user_id = 123
and st.effective_date = (select max(sti.effective_date) 
  from sometable sti where sti.user_id = st.user_id)
and st.effective_sequence = (select max(sti.effective_sequence) 
  from sometable sti where sti.user_id = st.user_id
  and sti.effective_date = st.effective_date)
Run Code Online (Sandbox Code Playgroud)

这些表上有非常多的索引,我找不到任何能加速查询的东西.

我的麻烦在于我经常想要从这些表中获取有关个人的数据,可能有50个user_ids,但是当我加入我的表中只有少数几个这样的PeopleSoft表的记录时,事情就变成了废话.

PeopleSoft表位于我通过数据库链接访问的远程数据库中.我的查询看起来像这样:

select st.* from local_table lt, sometable@remotedb st
where lt.user_id in ('123', '456', '789')
and lt.user_id = st.user_id
and st.effective_date = (select max(sti.effective_date) 
  from sometable@remotedb sti where sti.user_id = st.user_id)
and st.effective_sequence = (select max(sti.effective_sequence) 
  from sometable@remotedb …
Run Code Online (Sandbox Code Playgroud)

sql oracle peoplesoft data-warehouse

7
推荐指数
1
解决办法
5413
查看次数

Peoplesoft安全

我们希望从外部网络为用户提供peopleoft门户访问.但..访问需要只读,非常有限.

有没有人完成基于位置的角色启用是peopleoft ..即禁用所有角色并仅启用基于IP地址或Web服务器的特定角色?

peoplesoft

5
推荐指数
2
解决办法
3291
查看次数

是否可以使用jax-ws生成xml,但不能将其发送出去

所以这就是场景:我们有PeopleSoft,并希望从salesforce来回发送消息.不幸的是,PeopleSoft没有像wsimport这样的工具,它使用wsdl并为你生成类.有些东西会消耗wsdl,但它会生成存根消息对象.开发人员仍然必须编写代码来手动生成xml消息字符串.

我显然不想做所有这些.所以我知道java可以在PeopleSoft中调用.我也知道我可以使用生成的类发送消息,但我想使用PeopleSoft内置的消息监视功能.

所以我想到的一个可能的解决方案是:

  1. 在java中调用webservice方法(不发送消息)
  2. 抓住xml
  3. 通过peoplesoft机制发送xml
  4. 抓住响应xml
  5. 将响应xml传递回响应java类
  6. 使用java类来获取xml中的值

我疯了还是可能的?

ps我是一个新手java开发人员

这是我的抓取xml的处理程序类,但需要一些方法来防止消息被发送出去.

public class LoggingHandler implements SOAPHandler<SOAPMessageContext> {
 // change this to redirect output if desired
private static PrintStream out = System.out;
private String xmlOut = null;

public Set<QName> getHeaders() {
    return null;
}

public boolean handleMessage(SOAPMessageContext smc) {
    logToSystemOut(smc);
    return true;
}

public boolean handleFault(SOAPMessageContext smc) {
    logToSystemOut(smc);
    return true;
}

// nothing to clean up
public void close(MessageContext messageContext) {
}

public String getXmlOut() {
    return xmlOut;
} …
Run Code Online (Sandbox Code Playgroud)

java web-services jax-ws peoplesoft

5
推荐指数
1
解决办法
3777
查看次数

人员编码转移到没有搜索记录的页面

有没有一种方法可以使用PeopleCode的“转移”功能转移(并填写​​字段)到组件使用INSTALLATION作为搜索记录的页面?

我们在PT 8.53上使用FSCM 9.1。

我要转移到的页面是AP_VOUCHER_INQUIRY菜单路径是:应付帐款->查看应付帐款信息->凭单->凭单

我有需要传递给它的business_unit和voucher_id。在页面的“激活人员代码”内部,我看到以下内容:

  /*  If Business Unit and Voucher ID are being passed to this page, this code picks it out and populates the From/To fields and executes the search statement.  This code allows another page to use the TRANSFER function passing "some_record.BUSINESS_UNIT" and "some_record.VOUCHER_ID" as keys while opening Voucher Inquiry in a new browser.  */
 &bu = Unencode(%Request.GetParameter("BUSINESS_UNIT"));
 &vchr_id = Unencode(%Request.GetParameter("VOUCHER_ID"));
 &vchr_style_inq = Unencode(%Request.GetParameter("VOUCHER_STYLE_INQ"));
 &vndr_setid = Unencode(%Request.GetParameter("VENDOR_SETID"));
Run Code Online (Sandbox Code Playgroud)

peoplesoft peoplecode

2
推荐指数
1
解决办法
665
查看次数

行中的行,PeopleCode中的行集

我想更好地了解PeopleCode中使用的行和行集是什么?我通过PeopleBooks阅读,但仍然觉得我没有很好的理解.我希望更多地了解这些与Application Engine程序有关的内容.也许走一个例子可能有所帮助.以下是我的一些具体问题:

  1. 我知道Rowsets,Row,Record和Field用于访问组件缓冲区数据,但是通过Process Scheduler运行的独立Application Engine程序仍然如此吗?

  2. 会是什么需要或优势,使用这些,而不是使用SQL对象/功能(CreateSQL,SQLExec,等...)?我经常在AE程序中看到CreateRowset对象被实例化并使用.Fill带有SQL WHERE子句的方法,我不太明白为什么不使用SQL.

  3. 我在PeopleBooks中看到组件滚动中的Row对象是一行,组件滚动如何与行相关?我已经看到对具有不同滚动级别的行的引用,这只是一种分组和嵌套相关数据的方式吗?

  4. 在实例化CreateRowset对象之后,之后程序中它的典型用途是什么?您将如何对行集检索的数据执行逻辑(If,Then,Else等),还是使用它来更新数据?

我感谢您分享的任何见解.

peoplesoft peoplesoft-app-engine peoplecode

2
推荐指数
1
解决办法
1006
查看次数

你能在Pe​​opleCode中通过引用传递吗?

我是PeopleCode的新手,当我正在学习函数时,我注意到在PeopleCode中,我们通常使用%PATIENT_ID传递值.有朋友告诉我你也可以通过PeopleCode中的引用传递但是怎么样?

peoplesoft pass-by-reference

0
推荐指数
1
解决办法
1686
查看次数