select object_name(id),* from syscomments
where texttype = 0 and
(text like '%turnkey_date%'
or text like '%turnkey_pick%'
or text like '%turnkey_canceldate%'
or text like '%etrndt%'
)
;
select object_name(id),* from syscomments
where texttype = 0 and
(text like '%turnkey_date%'
or text like '%turnkey_pick%'
or text like '%turnkey_canceldate%'
or text like '%etrndt%'
)
;
這個錯誤是說明
從DB搜尋的值,有包含null
困難在於,錯誤不一定會顯示位置,有2個方向查找
1. 檢查C#中,從DB來做轉換的欄位,可以設定null給空白
string SEG6 = (string)dataRow["SEG6"];
string SEG6NM = (string)dataRow["SEG6NM"];
2. 檢查搜尋出的值,如下圖,在依欄位找出要修改的地方,或修改where條件,不可以null
此報表的定義無效,或是這個版本的 Reporting Services 不支援該報表定義。報表定義可能是以較新版本的 Reporting Services 所建立,或是含有格式不完整或不適用於 Reporting Services 結構描述的內容。詳細資料: 報表定義具有無效的目標命名空間 'http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition',此命名空間無法升級。
1. 請修改屬性目標server
3.重建後的RDL檔,會放在bin\Debug裡,用該檔上傳Server即可
function formatCurrency(num) {
num = num.toString().replace(/\$|\,/g, '');
if (isNaN(num))
num = "0";
sign = (num == (num = Math.abs(num)));
num = Math.floor(num * 100 + 0.50000000001);
cents = num % 100;
num = Math.floor(num / 100).toString();
if (cents < 10)
cents = "0" + cents;
for (var i = 0; i < Math.floor((num.length - (1 + i)) / 3); i++)
num = num.substring(0, num.length - (4 * i + 3)) + ',' +
num.substring(num.length - (4 * i + 3));
return (((sign) ? '' : '-') + num + '.' + cents);
}
function IsIntText(textControl) {
var str = textControl.value;
var regexp = /^([1-9][0-9]*)$/; //正整數
// ^-?\d+$ 整數含負數
var msg = '';
if (!regexp.test(textControl.value)) {
msg = '數字格式不正確!';
}
if (parseInt(str, 10).toString() == '0') { //表示輸入的是0或0.00啦
msg = '數字格式不可為0!';
}
if( msg != ''){
alert(msg);
textControl.value = "";
}
else{
//檢查都過後重算總金額
//把數字傳給數值欄位計算總金額
//把字串欄位變成貨幣單位(千分位帶逗點)
var fgvD2 = document.getElementById("ctl00_ContentPlaceHolder1_fgvD2");
var totalAMT = 0; //總金額
var AlltotalAMT = 0; //總金額
var ORDERAMT = 0; //單價
var ORDERNUM = 0 ; //數量
if (fgvD2.rows.length > 0) {
for (var i = 1; i < fgvD2.rows.length; i++) {
totalAMT = 0;
//字串去除逗號
//數量字串欄位
ORDERNUM = fgvD2.rows[i].cells[3].getElementsByTagName("input")[0].value;
ORDERNUM = ORDERNUM.replace(new RegExp(",", ''),''); //replaceall
//單價字串欄位
ORDERAMT = fgvD2.rows[i].cells[4].getElementsByTagName("input")[0].value;
ORDERAMT = ORDERAMT.replace(new RegExp(",", ''),''); //replaceall
//單價傳給數值欄位 在.cs pageload給值
//fgvD2.rows[i].cells[4].getElementsByTagName("input")[1].value = ORDERAMT;
//總金額 = 總金額 + 數量 * 單價
totalAMT = (ORDERNUM * ORDERAMT);
AlltotalAMT = AlltotalAMT + (ORDERNUM * ORDERAMT);
//總金額傳給數值欄位 在.cs pageload給值
//fgvD2.rows[i].cells[5].getElementsByTagName("input")[1].value = totalAMT;
//金額字串欄位加上貨幣符號(千分位帶逗點)
fgvD2.rows[i].cells[4].getElementsByTagName("input")[0].value = formatCurrency(ORDERAMT).toString();
fgvD2.rows[i].cells[5].getElementsByTagName("input")[0].value = formatCurrency(totalAMT).toString();
//隱藏td關閉
//document.getElementById('tdORDERAMT').style.display = 'none';
//document.getElementById('tdTOTALAMT').style.display = 'none';
}
document.getElementById("ctl00_ContentPlaceHolder1_lbTOTALAMT").innerText = formatCurrency(AlltotalAMT).toString();
document.getElementById("ctl00_ContentPlaceHolder1_ftbALLTOTALAMT").value = formatCurrency(AlltotalAMT).toString();
}
}
}
function IsfloatText(textControl) {
var str = textControl.value;
var str = textControl.value;
var regexp = /^[0-9]+.[0-9]{1,2}?$/; //帶2位小數正實數 發現10A1這種無法找出 下方修補邏輯
var regexp2 = /^([1-9][0-9]*)$/; //正整數
var msg = '';
if (!regexp.test(textControl.value) && !regexp2.test(textControl.value)) { //整數或小數
msg = '數字格式不正確!';
}
var regexp2 = /[A-Za-z]/
if (regexp2.test(textControl.value)) { //若包含字母
msg = '數字格式不正確!';
}
if (parseFloat(str, 10).toString() == '0') { //表示輸入的是0或0.00啦
msg = '數字格式不可為0!';
}
if (msg != '') {
alert(msg);
textControl.value = "";
}
else {
//檢查都過後重算總金額
//把數字傳給數值欄位計算總金額
//把字串欄位變成貨幣單位(千分位帶逗點)
var fgvD2 = document.getElementById("ctl00_ContentPlaceHolder1_fgvD2");
var totalAMT = 0; //總金額
var AlltotalAMT = 0; //總金額
var ORDERAMT = 0; //單價
var ORDERNUM = 0; //數量
if (fgvD2.rows.length > 0) {
for (var i = 1; i < fgvD2.rows.length; i++) {
totalAMT = 0;
//字串去除逗號
//數量字串欄位
ORDERNUM = fgvD2.rows[i].cells[3].getElementsByTagName("input")[0].value;
ORDERNUM = ORDERNUM.replace(/,/, '');
//單價字串欄位
ORDERAMT = fgvD2.rows[i].cells[4].getElementsByTagName("input")[0].value;
ORDERAMT = ORDERAMT.replace(/,/, '');
//單價傳給數值欄位 在.cs pageload給值
//fgvD2.rows[i].cells[4].getElementsByTagName("input")[1].value = ORDERAMT;
//總金額 = 總金額 + 數量 * 單價
totalAMT = (ORDERNUM * ORDERAMT);
AlltotalAMT = AlltotalAMT + (ORDERNUM * ORDERAMT);
//總金額傳給數值欄位 在.cs pageload給值
//fgvD2.rows[i].cells[5].getElementsByTagName("input")[1].value = totalAMT;
//金額字串欄位加上貨幣符號(千分位帶逗點)
fgvD2.rows[i].cells[4].getElementsByTagName("input")[0].value = formatCurrency(ORDERAMT).toString();
fgvD2.rows[i].cells[5].getElementsByTagName("input")[0].value = formatCurrency(totalAMT).toString();
//隱藏td關閉
//document.getElementById('tdORDERAMT').style.display = 'none';
//document.getElementById('tdTOTALAMT').style.display = 'none';
}
document.getElementById("ctl00_ContentPlaceHolder1_lbTOTALAMT").innerText = formatCurrency(AlltotalAMT).toString();
document.getElementById("ctl00_ContentPlaceHolder1_ftbALLTOTALAMT").value = formatCurrency(AlltotalAMT).toString();
}
}
}
ASPX
<script type="text/javascript">
function FORZENToDo() {
var msg = '將執行預算凍結,凍結後無法修改預算';
if (confirm(msg)) {
return false;
}
return true;
}
</script>
<asp:Button ID="E_btnFORZEN" runat="server" Text="凍結(待審核)" OnClick="E_btnFORZEN_Click" OnClientClick="if(FORZENToDo()){return false}" Width="15%" />
ASPX.cs
protected void E_btnFORZEN_Click(object sender, EventArgs e)
{
//要執行的動作
}
在使用TableAdapter作Query時發生 1. 原因為有些資料欄位Query出來後為null值 但是該欄位在dbDataSet的屬性AllowDBNull為False 因此把該欄位(或乾脆把全部欄位屬性AllowDBNull改為True 2. maxLength 檢...