我已经看到了基于节点值应用了follow-sibling的问题,但我的问题与实际节点本身有关.
这是我拥有的XML类型:
<Employee>
<Summary>
<A>
<B>
</Summary>
<Elections>
</Elections>
<Employee>
Run Code Online (Sandbox Code Playgroud)
我需要编写一个Xpath条件,如下所示:
if (NOT(the following sibling(first sibling) of /Employee/Summary is Elections)), then do something.
Run Code Online (Sandbox Code Playgroud)
目前我有:
<xsl:if test="(not(following-sibling::Employee/Summary[1]='Earnings'))
<xsl:call-template name="EmployeeRecord"/>
</xsl:if>
Run Code Online (Sandbox Code Playgroud)
请注意,我没有检查节点值,而是检查节点本身(即节点名称).我们非常感谢任何正确方向的帮助.
我已经看到了一些类似的问题,但我正在努力实现这一目标.
给定一个字符串,str ="月亮是我们的天然卫星,即它围绕地球旋转!" 我想提取单词并将它们存储在一个数组中.预期的数组元素就是这样.
the
moon
is
our
natural
satellite
i.e.
it
rotates
around
the
earth
Run Code Online (Sandbox Code Playgroud)
我尝试使用String.split(','\ t','\ r'),但这不能正常工作.我也尝试删除.和其他标点符号,但我想要一个像"ie"这样的字符串也要解析出来.实现这一目标的最佳方法是什么?我也尝试使用regex.split无济于事.
string[] words = Regex.Split(line, @"\W+");
Run Code Online (Sandbox Code Playgroud)
肯定会欣赏正确方向的一些推动.
我创建了一些显示事务的表,最后一列是金额字段.我需要在此列下方显示总计/小计.问题是我的表列设置为%widths.
如何确保显示总金额的字段将低于金额列.
我想我需要一些CSS代码来保持总字段(div/span)与表宽度相关联,但我不知道如何做到这一点.
谢谢.
例:
Col1 Col2 Col3 Amount
A B C 100
D E F 100
Total: 200
Run Code Online (Sandbox Code Playgroud)
编辑:我也应该说这个表是动态的.它使用Visualforce(本机force.com语言)创建.然后将UI呈现为HTML,并且我确实有CSS来格式化生成的HTML表.由于我事先不知道我可以拥有多少行,因此我不能简单地为总计添加一行,并希望了解是否有更好的解决方案.
一段时间后我重新发现了 HTML。
我只使用 HTML 和 javascript 以及 Salesforce。我有两个日期输入字段。我很好奇是否有任何简单的方法可以用以下内容填充这些字段:今天的日期 B. 日期是今天之前 6 个月。
<input type="text" id="toDate" size="10" onmouseover="initialiseCalendar(this, 'toDate')"/>
Run Code Online (Sandbox Code Playgroud)
谢谢,卡尔文
我对 CSS 比较陌生。我的页面上有一个宽度为 70% 的表格。我需要在表格右侧上方放置一个小图标,以便该图标与其下方表格的右边距对齐。我怎样才能做到这一点?
所以一般来说,这个问题是如何使用 CSS 相对于页面上其他元素的位置来定位元素?
谢谢,卡尔文
我无法在线获得有关此问题的任何可靠信息.但我认为这一定是一个必须影响很多人的问题.
基本上我在沙盒中编写了一个简单的触发器和测试类,测试了它,当它很好的时候我将它部署到了PRD.
我首先尝试了验证模式,但是我遇到了这个错误.
System.LimitException:SOQL查询太多:101
显示此错误发生在其他一些测试类中.所以我觉得我的触发器中的测试用例运行了,再加上剩下的测试用例不知何故超出限制.
因此,我们的单元测试中的SOQL查询总数必须小于100.这有点难以正确吗?我可以想象有这么多测试用例,我们肯定需要超过100个查询.
那么有什么方法可以避免达到这个限制,因为Salesforce在部署一行代码时会运行所有测试用例.
我没有任何常见的嫌疑人......就像for循环中的SOQL一样.
更新:2012年8月19日:我现在发布测试类和触发器的源代码
测试类:
@isTest
Run Code Online (Sandbox Code Playgroud)
private class TestAccountDuplicateWebsiteTrigger {
static testMethod void myUnitTest() {
try{
// TO DO: implement unit test
Test.startTest();
Account a1;
a1 = new Account();
a1.name = 'GMSTest';
a1.Website = 'www.test.com';
Account a2;
a2 = new Account();
a2.name = 'GMSTest2';
a2.Website = 'www.test.com';
Account a3;
a3 = new Account();
a3.name = 'GMSTest3';
a3.Website = 'www.test1.com';
insert a1;
insert a2;
//insert a3;
Test.stopTest();
}
catch (Exception e)
{
}
}
Run Code Online (Sandbox Code Playgroud)
}
触发 …
<apex:outputLink value="/!{opportunity.id}">{!opportunity.Name}</apex:outputLink>
Run Code Online (Sandbox Code Playgroud)
我在VF中创建了2个页面.一页显示动态搜索中的自定义对象记录列表.这是完整的.
我现在需要创建一个自定义VF页面,以便在用户单击列表页面上的链接时显示单个记录信息.我知道我们可以使用如上所示的输出链接.
假设我已经构建了详细信息页面(假设其路径是"apex/customDetailPage"),我将如何修改此链接.因为我的详细信息页面需要传递给它的选定记录ID,我想.
以下是我的SOQL查询:
select COUNT(Id) FROM Payroll_Group_Detail__c where Tax_Batch__c=null and CreatedDate >=2012-07-21T00:00:00-05:00 and Total_Tax_Amount__c!=null GROUP By Company__c,Name,Payment_Date__c,Pay_Cycle_Type__c;
Run Code Online (Sandbox Code Playgroud)
我正在尝试计算此group by子句返回的行数.但是我没有得到一个计数,而是获得了多行.如何获取此分组返回的行的总计数?
谢谢你,凯文
这更像是一个最佳实践问题.我们的组织目前对我们的自定义对象的组织默认值具有"公共读取"权限.我们不能把这个私有化,因为它现在为内部员工工作的方式,或者我们试图避免这种情况.
我还创建了一个带有自定义可视化强制页面的客户门户...我使用SOQL查询显示数据.
在SOQL查询上添加一个子句以仅返回帐户ID与登录用户的帐户ID匹配的记录是一个好主意吗?
我做到了,它工作得很好......但是我忽略了这种方法的任何陷阱吗?
谢谢你,凯文
我需要验证用户通过visualforce页面输入的日期字段.我的代码期望的格式是"yyyy-MM-dd".
在顶点处理此问题的最佳方法是什么?在使用某些标准类之前,我在Java中做了类似的事情,例如在SimpleDateFormat之类的Apex中没有.
现在我可以使用正则表达式检查"格式"是否正确.但我还必须阻止用户输入符合格式的"9999-99-99".我希望Salesforce有一个很好的内置解决方案.
谢谢你,凯文
我是C#和数据库的新手.
我在迭代时需要遍历数据表(包含在数据集中),我可能需要将当前行的值与前一行或下一行的值进行比较.
我目前正在迭代这样:
foreach(DataRow dr in ds.Tables["Invoices"].Rows)
{
//Check if invoice id is equal to invoice id from previous/next row
}
Run Code Online (Sandbox Code Playgroud)
我能想到的一种方法是保持"prev"变量来存储旧值并比较和更新,但我想看看DataTable是否提供了任何内置选项.
谢谢你,凯文
我不是JAVA本地程序员.我正在为Web服务API创建一个客户端.API基本上需要一个数组参数.
我正在解析XML文件,创建记录,然后使用此API进行批量INSERT.
问题是这个API一次只能插入200条记录,这意味着我的阵列在拨打电话时只能有200条或更少的记录.
由于我事先不知道有多少条记录,因此我将记录存储在ArrayList中,然后使用.ToArray()将其转换为数组.
APIObject[] invoiceArray = invoiceObjectlist.toArray(new APIObject[invoiceDetailObjectlist.size()]);
Run Code Online (Sandbox Code Playgroud)
现在由于API提出的200限制问题,我需要以200的块创建这些数组,直到插入ArrayList中的所有记录.
现在我想我可以遍历数组列表并维护一个计数器.当counter = 200时,我可以创建一个新数组,并通过维护索引指针将所有元素插入到该点,或者我可以将元素推送到每200条记录的新数组列表中,并将其转换为数组并执行插入.
在JAVA中执行此操作会有什么更优雅/更有效的方法?
谢谢.
apex-code ×5
salesforce ×5
html ×3
c# ×2
css ×2
force.com ×2
javascript ×2
visualforce ×2
.net ×1
arraylist ×1
arrays ×1
datatable ×1
date ×1
java ×1
performance ×1
regex ×1
sentence ×1
soql ×1
split ×1
table-footer ×1
validation ×1
words ×1
xml ×1
xpath ×1
xslt ×1