小编IEl*_*ite的帖子

将word文档(*.doc)转储到Text?

我正在寻找帮助将word文档(*.doc)转储到Text?我正在使用Delphi 2010.

如果解决方案是组件或库,则它应该是免费或开源组件或代码库.

delphi ms-word delphi-2010

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

帮助Delphi 7,ADO和MS Access SQL语句 - 部分Deuce

我需要帮助理解为什么我的SQL不起作用.或者,如果我需要以不同的方式编写它以获得我需要的结果.正如标题所示,我使用的是Delphi 7,ADO组件和MS Access 2000数据库.您可以在此处查看第I部分中的表结构:
帮助Delphi 7,ADO和MS Access SQL语句

我目前用来获取基于关键字的所有知识的SQL如下:

select*from(知识K
内连接knowledge_keywords KKW on KKW.knowledgeid = K.id)
内连接关键字KW on KW.id = KKW.keywordid
where(KW.keyword ='job')AND(KW.keyword ='task' )

然而,当知识id中具有相同知识id的那两个单词中显然存在这两个单词时,这不会返回并产生结果.

但是,如果我使用OR而不是AND执行相同的SQL,我会得到我预期的两条记录

select*from(知识K
内连接knowledge_keywords KKW on KKW.knowledgeid = K.id)
内连接关键字KW on KW.id = KKW.keywordid
where(KW.keyword ='job')AND(KW.keyword ='task' )

谢谢你的帮助

sql delphi ms-access ado delphi-7

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

如果我只有BDE别名,如何获得Interbase密码?

我试图通过BDE在运行时连接到Interbase DB.我试图在一个无形的项目(但不是一个控制台应用程序)中这样做.别名是已知的.我从注册表中检索别名.示例:MyAlias.

//create alias params list  
AParams:= TStringList.Create;  

//create a session to get alias parameters  
ASession:= TSession.Create(nil);  
ASession.SessionName := 'MainSession';  
try  
 ASession.GetAliasParams(tmpAlias, AParams);  
finally  
 ASession.Free;  
end;  


//connect to database 
dbMain:= TDatabase.Create(nil);  
with dbMain do  
begin  
 //AliasName:= 'MyAlias';  
 DatabaseName:= 'test';  
 LoginPrompt:= False;  
 Params.Assign(AParams);  
 try  
  Connected:=True;  
  if Connected then ShowMessage('Connected!') else ShowMessage('Failed to Connect!');    
 finally  
  Free;  
 end; //try  
end;//with  

//free alias params list  
AParams.Free;
Run Code Online (Sandbox Code Playgroud)

无论如何,它看起来不像Session.GetParams实际获得密码.我如何获得密码?如果我知道别名,有没有办法从BDE获取所有连接信息并建立连接?如果客户端将来更改用户名和密码,我宁愿不对其进行硬编码.

delphi interbase bde delphi-7

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

帮助SQL总计和总和

我有这个SQL.我不确定它是我需要的,但它确实选择了我需要的所有记录.我现在只需要压缩它们并计算唯一日期的计数和金额.

select m.account_tag, m.cmcl_forecast_cleared, m.check_amount,  
a.acct_id, a.acct_no, a.bank_id,  
b.bank_id, b.name  
from ap_master m   
join accounts a on a.acct_id=m.account_tag  
join banks b on b.bank_id=a.bank_id  
where m.cmcl_bank_cleared is null 
order by m.account_tag, m.cmcl_forecast_cleared  
Run Code Online (Sandbox Code Playgroud)

我只想显示四列Account,Date,Count和sum

该帐户将是a.acct_no.
日期将是该帐户
的所有唯一m.cmcl_forecast_cleared日期计数将是这些唯一日期的检查(记录)
的总数(cmcl_forecast_cleared)总和将是该唯一日期的总check_amount(cmcl_forecast_cleared)

我希望这是可以理解的.我不确定我是否需要任何分组

sql delphi interbase

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

在GetFileSize上更改数据类型大小

使用Delphi 7开发我们的主要应用程序.我们正在导入数据文件.以字节为单位的文件大小超过了vcl和我的代码用来保存它的整数变量的大小......所以它变为负数并且采取空文件操作......

我们当前检查文件大小的代码(从而决定是否为空)是:

function getfilesize(vfilename: string): integer;
var
  SearchRec: TSearchRec;
begin
    try
    result:= -1;
    if FindFirst(vfilename, faAnyFile, SearchRec) = 0 then
      result:= SearchRec.Size;
    FindClose(SearchRec);
    except
      on e: exception do
        raise exception.create('Error: functions\getfilesize - Unable to analyze file Attributes to determine filesize. '#13#10+e.message);
    end;
Run Code Online (Sandbox Code Playgroud)

多年来,这种情况来回变化,但在过去的5年里,这种方法运作良好.

searchrec.size是一个INTEGER,所以只更改我们的返回类型是不够的.存储中还有许多其他因素,与我们的代码和我们使用的数据库字段有关.

问:确定文件大小以字节为单位的其他D7方法对我们有用,它们使用更大的数据类型?

问:你知道getFilesize在更大整数中的任何其他替换函数吗?

delphi delphi-7

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

请帮助"ORA-00907:错过右括号"错误

我得到一个ORA-00907:从下面的代码中缺少右括号

 dbQuery:= TQuery.Create(nil);
 dbQuery.DatabaseName:= dbMain.DatabaseName;
 with dbQuery do
 begin
   SQL.Add('select payee_address_zip, EXTRACT(WEEKDAY FROM check_date) as DOW, ');
   SQL.Add('(cmcl_bank_cleared - check_date) as DateDiff from AP_Master ');
   SQL.Add('where (cmcl_bank_cleared is not null) AND ((cmcl_bank_cleared - check_date) >=:DaysParam)');
   SQL.Add('order by payee_address_zip, DOW, DateDiff');
  try
   ParamByName('DaysParam').AsInteger:= days_param_int;
   Open;
   //do something else here      
  except on E:EDatabaseError do
   begin
    raise ECustomException.create('Error opening query for step 1 of computing Float Factors!');
   end;//except
  end; //try
 end; //with
 dbQuery.Free;
Run Code Online (Sandbox Code Playgroud)

有人能告诉我发生了什么事吗?我似乎无法看到我遗漏了一个括号,这个SQL对Interbase测试数据库工作得很好.但是,当它移动到客户端oracle数据库时,它崩溃,上面的错误.

sql delphi oracle delphi-7

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

当我使用ShellExecute时,为什么我的命令不像我预期的那样运行?

我试图从我的Delphi代码使用命令行实用程序(它与dos命令行中的测试一起使用)将PDF转储到文本.

这是我的代码

if fileexists(ExtractFilePath(Application.ExeName) + 'pdftotext.exe') then
begin
  ShellExecute(H,'open', 'pdftotext.exe', PWideChar(fFileName), nil, SW_SHOWNORMAL);
  if fileExists(changeFileExt(fFileName, '.txt')) then
    Lines.LoadFromFile(changeFileExt(fFileName, '.txt'))
  else
    ShowMessage('File Not found');
end;
Run Code Online (Sandbox Code Playgroud)

在代码中放置断点并单步执行时,它会使用它

if fileExists(changeFileExt(fFileName, '.txt')) then  
Run Code Online (Sandbox Code Playgroud)

但是返回false,因此调用了Shellexecute,但是没有转储任何文件

我做错了什么?

delphi winapi command-line shellexecute delphi-2010

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