我正在使用Dave Brooks的MAPI代码.
我试图以编程方式发送生成的Crystal报表.
当我在没有线程的情况下运行代码时,一切运行正常.问题是当我使用线程时,我得到返回错误"General MAPI failure [2]".
我之前从未使用过线程,并且理解存在危险.任何人都可以对此问题提供任何见解吗?注意:我已删除异常处理以使代码更清晰.
Private Sub RunReport()
SetParameters()
SaveReportFile()
Dim operation As New ThreadStart(AddressOf SendEmail)
Dim theThread As New Thread(operation)
theThread.Start()
End Sub
Public Sub SendEmail()
Dim m As MAPI
m = New MAPI()
Dim email As String
For Each email In emailAddress
m.AddRecipientBCC(email)
Next email
m.AddAttachment(@"c:\temp\report.pdf")
m.SendMailPopup("Requested Report", "")
End Sub
Run Code Online (Sandbox Code Playgroud) 如何搜索vs 2008 Team Explorer中其他用户签出的文件.我可以通过搜索搜索Visual Source Safe项目中检出的所有文件,是否在团队资源管理器中实现了类似的功能?现在我必须点击每个文件夹,看看该文件夹中的文件是否被其他任何人检出.
谢谢
这是在C#,Visual Studio 2008,VS2008附带的水晶报告中
我有一个位于DLL中的水晶报表查看器表单.DLL负责加载水晶报告(基于报告文件名),并在表单上显示报告.
当我完成水晶报告后,我在已加载的reportdocument对象上调用dispose.但是,数据库连接仍然存在.
Crystal似乎检测到有其他连接(从我的主应用程序)到同一个数据库,并保持其连接打开.关闭主应用程序数据库连接时,晶体连接将关闭.
有没有办法迫使水晶关闭它的连接,而没有关闭主应用程序数据库连接?
我有一个if else树将会增长,因为我添加额外的项目来维护它,我正在寻找最好的方法来编写它的可维护性我从这个代码开始
private void ControlSelect()
{
if (PostingType == PostingTypes.Loads && !IsMultiPost)
{
singleLoadControl.Visible = true;
singleTruckControl.Visible = false;
multiTruckControl.Visible = false;
multiLoadControl.Visible = false;
}
else if (PostingType == PostingTypes.Trucks && !IsMultiPost)
{
singleLoadControl.Visible = false;
singleTruckControl.Visible = true;
multiTruckControl.Visible = false;
multiLoadControl.Visible = false;
}
else if (PostingType == PostingTypes.Loads && IsMultiPost)
{
singleLoadControl.Visible = false;
singleTruckControl.Visible = false;
multiTruckControl.Visible = false;
multiLoadControl.Visible = true;
}
else if (PostingType == PostingTypes.Trucks && IsMultiPost)
{
singleLoadControl.Visible = false;
singleTruckControl.Visible …Run Code Online (Sandbox Code Playgroud) 我正在为Visual Studio 2008运行Crystal Reports Basic.
我想基于参数动态刷新我的报告.
例如,我将签订客户合同,并且我希望在基于VB.NET winform按钮点击的客户之间切换.
我期待下面的代码能够正常工作,但我不断获得"输入参数值"对话框,为什么不使用我刚刚设置的参数值?
CustomerReport1.SetParameterValue("CustomerID", txtCustID.Text)
CrystalReportViewer1.RefreshReport()
Run Code Online (Sandbox Code Playgroud) 我需要创建一个返回连续日期表的函数.我会传递一个最小和最大日期.
我希望它可以这样调用:
SELECT * FROM GetDates('01/01/2009', '12/31/2009')
Run Code Online (Sandbox Code Playgroud)
我目前有一个存储过程执行此操作,但需求已更改,现在我需要包括从联合中返回的数据:
with mycte as
(
select cast(@minDate as datetime) DateValue
union all
select DateValue + 1
from mycte
where DateValue + 1 <= @maxDate
)
select DateValue
from mycte
option (maxrecursion 1000)
Run Code Online (Sandbox Code Playgroud)
然而,问题是我需要将递归设置为大于100.根据Gail Erickson [MS]关于eggheadcafe的帖子,目前不支持.
如果没有创建一个只有日期的真实(非临时)表,有没有办法做到这一点?
我使用的是SqlServer2005.
我在SQL Server 2008中发现了一个相当微不足道的错误.
我想向微软报告,但是,当我访问https://support.microsoft.com/时,我意识到我可能需要花费300加元来报告它.
有没有一个地方我可以报告这个错误而不花钱给我任何钱?
以下是该错误的示例:
作品:
USE [msdb]
(SELECT * FROM msdbms)
Run Code Online (Sandbox Code Playgroud)
与失败 "关键字'秩序’附近有语法错误."
USE [msdb]
(SELECT * FROM msdbms ORDER BY dbms)
Run Code Online (Sandbox Code Playgroud)
此外,如果我不正确,这不是一个错误可以解释为什么不呢?
编辑
我已将此添加到Microsoft Connect
如何在gridview的RowDataBound事件中访问'BoundField'的值?
我有3个ASP.NET文本框和一个HiddenField.第三个文本框的值(禁用此选项)取决于其他两个文本框的值.
公式是
txtPricepad = txtPrice/txtCarton
<asp:TextBox ID="txtPriceCase" runat="server" onblur="javascript:GetPricePerPad();></asp:TextBox>
<asp:TextBox ID="txtCarton" runat="server"></asp:TextBox>
<asp:TextBox ID="txtPricePad" Enabled="false" runat="server" ></asp:TextBox>
<asp:HiddenField ID="hdPricepad" runat="server"/>
function GetPricePerPad()
{
var priceCase = document.getElementById('ctl00_content_txtPriceCase').value;
var cartons = document.getElementById('ctl00_content_txtCarton').value;
var res = Number(priceCase) / Number(cartons);
document.getElementById('ctl00_content_txtPricePad').value = res;
document.getElementById('ctl00_content_hdPricepad').value = res;
}
Run Code Online (Sandbox Code Playgroud)
假设txtPricePad的初始值为0且txtCarton为12.当txtPrice的值更改为1200时,将调用GetPricePerPad(),因此txtPricePad将为100.
Javascript成功地将txtPricePad的值更改为100但是当我从代码隐藏调用txtPricePad时,它的值仍为0.这就是为什么我还将公式的结果分配给HiddenField.还有其他方法吗?我不想再使用HiddenField.
可能的重复:
JavaScript: var functionName = function() {} vs function functionName() {}
Javascript 中的函数表达式与声明之间有什么区别?
我试图了解 javascript 的“最佳实践”。
此代码来自jqfundementals.com
// create a function that will greet a person,
// and assign the function to the `greet` variable
var greet = function( person, message ) {
var greeting = 'Hello, ' + person + '!';
log( greeting + ' ' + message );
};
greet( 'Jory', 'Welcome to JavaScript' );
greet( 'Rebecca', 'Thanks for joining us' );
Run Code Online (Sandbox Code Playgroud)
为什么我应该将函数分配给 greet 变量?
我的第一个冲动是这样写:
function …Run Code Online (Sandbox Code Playgroud) .net ×2
asp.net ×2
c# ×2
report ×2
sql-server ×2
vb.net ×2
gridview ×1
javascript ×1
mapi ×1
refactoring ×1
sql ×1
t-sql ×1
textbox ×1