我有一个包含大约10个参数和大约10个数据集和一个数据源的报告.我打字很多,但我真的需要帮助所以我想我会尝试提供尽可能多的关于问题的信息,因为我可以从一开始.
让我们简化一切,并假装这些是所有内容的相关名称,并且报告获得基本的员工信息:
问题:
SSRS说viewOption不存在.但我在左侧的Parameters文件夹中看到了它.当我在参数下输入表达式时,我看到了它.参数!viewOption.value下没有波浪形的红线.但是,当我尝试将其作为getListOfNames数据集使用的参数的值时,它会出错.如果我把它放在getReportInfoOnSelectedPerson数据集中并以完全相同的方式使用它,SSRS就可以了.跆拳道?所以...我已经检查了rdl,一切都很好(声明了实际参数,在数据集引用中使用它,所有内容).它只是这一个数据集.我有一个类似的报告,使用相同的数据集,相同的基本参数和报告是好的.我尝试将dataset参数的值设置为1或者其他,这很好但是当我尝试将其设置为Parameter!viewOption.value时它出错.....现在,上面我说我通常传递存储的proc一个Join在带有波浪号的参数上〜但是我试图保持它简单,或者让它只是通常工作(通过传递多值viewOption参数的第一个值或将该参数转换为单个选择并且只是传递.但是连接也不起作用.所有这些都适用于其他数据集,这也是一个存储过程.
这是我的错误:
报告处理期间发生了错误.(rsProcessingAborted)查询参数"@viewOption"的Value表达式包含错误:表达式引用了报表参数集合中的不存在的参数.(rsRuntimeErrorInExpression)
这显然是说我的参数不存在,但我可以看到它...到处都是.如果我将其他数据集中的一个参数值分配给viewOption参数,则它可以正常工作而不会出现错误.我检查了rdl.
我之前遇到过这个问题,通过删除参数和数据集并再次创建它们来修复它(为了安全起见,我重命名了它们).这次没办法.
我很沮丧.请帮忙....
码?
<DataSet Name="getListOfNames">
<Fields>
<Field Name="personID">
<DataField>PersonId</DataField>
<rd:TypeName>System.Guid</rd:TypeName>
</Field>
<Field Name="name">
<DataField>name</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
</Fields>
<Query>
<DataSourceName>myDataSource</DataSourceName>
<CommandType>StoredProcedure</CommandType>
<CommandText>getListOfNames</CommandText>
<QueryParameters>
<QueryParameter Name="@fac">
<Value>=join(Parameters!fac.Value,"~")</Value>
</QueryParameter>
<QueryParameter Name="@bldg">
<Value>=join(Parameters!bldg.Value,"~")</Value>
</QueryParameter>
<QueryParameter Name="@unit">
<Value>=join(Parameters!unit.Value,"~")</Value>
</QueryParameter>
<QueryParameter Name="@station">
<Value>=join(Parameters!station.Value,"~")</Value>
</QueryParameter>
<QueryParameter Name="@startDate">
<Value>=Parameters!startDate.Value</Value>
</QueryParameter>
<QueryParameter Name="@endDate">
<Value>=Parameters!endDate.Value</Value>
</QueryParameter>
<QueryParameter Name="@viewOption">
<Value>=Join(Parameters!viewOption.Value, "~")</Value>
</QueryParameter>
</QueryParameters>
<rd:UseGenericDesigner>true</rd:UseGenericDesigner>
</Query>
</DataSet>
<ReportParameter Name="viewOption"> …Run Code Online (Sandbox Code Playgroud) 我需要将数据发布到php页面,然后我想得到响应中某个div的文本,但我似乎无法正确设置.我对jQuery不太好,但我通常可以很快解决问题...我已经在这一段时间内已经尝试了所有我发现的东西......我想我只是错过了正确的东西组合.
$.post("process.php", data , function (response) {
var w = window.open();
$(w.document.body).html(response);
console.log(typeof response); // yeilds string
//create jquery object from the response html
// var $data = $(response); // yeilds Uncaught Error: Syntax error, unrecognized expression: + whole html text
var success = $($.parseHTML(response)).find("#success");
console.log('success');
console.log(success); // see screenshot
console.log(success.text()); // yields nothing
console.log(success.val()); // yields undefined
// if (window.focus) {w.focus()};
},'html');
Run Code Online (Sandbox Code Playgroud)
这是输出console.log(success);和红色框是我想要的响应...
![这张照片看起来很小......当我制作时它并不那么小.我希望它仍然可读] [1]
这样做:
var success = $(response).find("#success");
console.log('success');
console.log(success); // yeilds Uncaught Error: Syntax …Run Code Online (Sandbox Code Playgroud) 我可以尽可能地清理和验证我的输入,但这绝对不能涵盖所有内容,如果我足够用力、足够彻底地擦洗,我将完全清除我的输入。
我意识到有很多关于这个主题的帖子,但似乎他们总是回到 PDO 或 Mysql(是的 - 即使有人发布关于 SQL Server 的帖子,他们收到的一半答案都表明 mysql_real_escape_string - 疯狂的世界)。 我也不能用。即使在我打字时,屏幕右侧出现一些“类似的问题”,我也一直点击各种链接,但没有任何内容能完全回答我的问题。
我正在使用 SQL Server。我正在使用 PHP 5.2.4。我不能使用 PDO(因为...?我的老板说“不”,这就是足够的理由)。
有没有一种方法可以编写一种安全的方法来准备我自己的查询语句?
过去,我曾尝试在 PHP 中构建这样的语句。(其中 $input_* 变量是某种形式的用户输入,或者我将它们从某些东西中拉出来)
$query = "
declare @varID int
declare @var1 int
declare @var2 varchar(100)
set @varID = cast('$input_ID' as int)
set @var1 = cast('$input_var1' as int)
set @var2 = cast('$input_var2' as varchar(100))
update table_name_goes_here
set var1 = @var1,
var2 = @var2
where ID = @varID;
";
# $query is then executed
Run Code Online (Sandbox Code Playgroud)
但这也可能很脆弱......显然......我做的最后一件事是删除所有必要的标点符号(有时我知道他们没有理由使用某些字符)
但必须有其他选择......对吗?并且mssql_bind只适用于存储过程,这是一个明确的选择,但我不确定我是否想通过插入/更新过程自愿扩展我的职责以将维护包括在实际数据库中。
我有一个SQL查询来显示stage_time表中stage_times的所有总和.但是我只需要为所有3个阶段输入值的汽车使用stage_times的总和,因此在这种情况下car_no 3被排除在列表之外;
这是一个带有我的示例代码http://sqlfiddle.com/#!2/1675d/78的sqlfiddle
SELECT d.*, SUM(Stage_Time) AS total
FROM Driver d, Stage_Times st
WHERE st.Driver_Id = d.Driver_Id AND st.Event_Id = 1
AND st.Stage_Id <= 3
GROUP BY d.Driver_Id
ORDER BY total;
Run Code Online (Sandbox Code Playgroud)
在此先感谢您的帮助
我有一个查询,如何将结果作为数组?
function get_all_transaksi_proses() {
$rs = $this->db->query("SELECT a.id_transaksi,
a.nama,
a.tgl_transaksi,
(SELECT COUNT( id_transaksi ) AS jum
FROM tbl_detail_trs_menu
WHERE id_transaksi = a.id_transaksi) AS jumlah,
a.status_transaksi,
a.total,
b.status_pelanggan,
c.nama_karyawan
FROM tbl_transaksi a
LEFT JOIN tbl_pelanggan b
ON a.id_pelanggan = b.id_pelanggan
LEFT JOIN tbl_karyawan c
ON a.id_karyawan = c.id_karyawan
WHERE a.status_transaksi = 'PROSES' ");
echo json_encode(array("result" => $rs));
}
Run Code Online (Sandbox Code Playgroud) 我正在浏览一个javascript库,我想知道为什么要定义这样的变量...
points: {
show: !0
},
Run Code Online (Sandbox Code Playgroud)
为什么你会做show: !0的只是代替show: 1?
我不认为这个问题必然是针对javascript的,但我还是用它来标记问题,以防它实际上是特定于语言的.
jquery ×2
php ×2
sql-server ×2
ajax ×1
codeigniter ×1
javascript ×1
parameters ×1
selector ×1
sql ×1
ssrs-2008 ×1