小编Pet*_*ete的帖子

Oracle DECODE与NVL

我正在尝试分析由已离职的开发人员编写的现有Oracle查询.我不熟悉Oracle,我对DECODEMicrofocus COBOLapp中使用此函数感到有点困惑(其中:BV-POS_YEAR一个变量设置为一年):

SELECT ...., DECODE(DELV_YEAR, NULL, :BV-POS_YEAR, DELV_YEAR), ....
Run Code Online (Sandbox Code Playgroud)

我试图了解它与以下内容有何不同:

SELECT ...., NVL(DELV_YEAR, :BV-POS_YEAR), ....
Run Code Online (Sandbox Code Playgroud)

我误解了关于DECODENVL功能的一些事情吗?开发人员知道NVL函数,因为它在同一个select语句的其他地方使用.

sql oracle

4
推荐指数
1
解决办法
5734
查看次数

执行 CLR SQL 函数时出现问题

我创建了一个简单的 1 方法 DLL,使用内部 Web 服务将字符串地址转换为纬度/经度字符串。代码很简单:

public class GeoCodeLib
{
    [SqlFunction(IsDeterministic=false)]
    public SqlString GetLatLon(SqlString addr)
    {
        Geo.GeoCode gc = new Geo.GeoCode();
        Geo.Location loc = gc.GetLocation(addr.Value);
        return new SqlString(string.Format("{0:N6}, {1:N6}", loc.LatLon.Latitude, loc.LatLon.Longitude));
    }
}
Run Code Online (Sandbox Code Playgroud)

我的目标是.NET Framework 2.0。我们使用的是 SQL Server 2008 R2。该程序集已添加到数据库中(该程序集称为 GeoCodeSqlLib.dll)。我们没有对其设置任何权限。

我似乎无法调用它。我试过了:

select GeoCodeSqlLib.GeoCodeLib.GetLatLon('12143 Thompson Dr. Fayetteville, AR 72704')
Run Code Online (Sandbox Code Playgroud)

这给了我这样的信息,Cannot find either column "GeoCodeSqlLib" or the user-defined function or aggregate "GeoCodeSqlLib.GeoCodeLib.GetLatLon", or the name is ambiguous.

我试过了:

CREATE FUNCTION GetLatLon(@amount varchar(max)) RETURNS varchar(max) 
AS EXTERNAL NAME GeoCodeSqlLib.GeoCodeLib.GetLatLon
Run Code Online (Sandbox Code Playgroud)

这给了我这样的信息,Could …

c# sql-server sqlclr

3
推荐指数
1
解决办法
1453
查看次数

WPF 自定义控件中出现“类型引用找不到公共类型...”错误

我正在尝试我的第一个 WPF 自定义控件。我几乎没有做过任何事情,它不会编译。我在 generic.xaml 中收到错误消息:“类型引用找不到名为“Filmstrip”的公共类型。第 7 行位置 50(第 7 行是样式开始标记)

通用.xaml:

<ResourceDictionary
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="clr-namespaces:Unicorn.Controls">
    <Style TargetType="{x:Type local:Filmstrip}">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type local:Filmstrip}">
                    <Border Background="{TemplateBinding Background}"
                            BorderBrush="{TemplateBinding BorderBrush}"
                            BorderThickness="{TemplateBinding BorderThickness}">
                    </Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
</ResourceDictionary>
Run Code Online (Sandbox Code Playgroud)

幻灯片.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace Unicorn.Controls
{
    public class Filmstrip : Control
    {
        static Filmstrip()
        {
            DefaultStyleKeyProperty.OverrideMetadata(typeof(Filmstrip), new FrameworkPropertyMetadata(typeof(Filmstrip)));
        } …
Run Code Online (Sandbox Code Playgroud)

c# wpf xaml custom-controls

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

设置 Excel 电子表格的“标题”属性

首先,我是一个完全的 Excel 互操作小白。

我试图从单元格中获取日期,然后在保存文档之前将文档的标题设置为日期的月份。这是我的代码:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
   ThisWorkbook.Title = DateTime.Month(ThisWorkbook.Sheets("Sheet1").Cell("A10"))
End Sub
Run Code Online (Sandbox Code Playgroud)

我不确定是否有任何工作。我在代码上设置了断点,但我无法“运行”它,因为它不是宏,而是事件处理程序,所以我认为断点不会起作用。我没有收到任何错误。我什至不知道那ThisWorkbook.Title是我想要的,我什至不确定从牢房里得到月份。

excel vba

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

将 OPENQUERY 与 Oracle 数据库结合使用来查询日期范围

我们有一个 Oracle 数据库,可以通过 OpenQuery 访问该数据库以获取某些内容。显然,您无法使用 OleDB 驱动程序直接在 OpenQuery 中进行日期比较,因此要解决此问题,您必须将日期转换为 Julien 日期并比较这些数字。我有以下查询,我们尝试在 MS SQL Server 中执行此查询(GPROD 是通过 OleDb 驱动程序的链接服务器):

SELECT *
FROM  OPENQUERY(GPROD, '
     SELECT * 
     FROM ORD_HDR_HST 
     WHERE (cast(to_number(to_char(SHIP_DATE ,''J'')) as numeric(10,0))  >= cast(to_number(to_char(to_date(''01-JAN-2015'') ,''J'')) as numeric(10,0))  AND 
            cast(to_number(to_char(SHIP_DATE ,''J'')) as numeric(10,0))  <= cast(to_number(to_char(to_date(''21-SEP-2015'') ,''J'')) as numeric(10,0)) )')
Run Code Online (Sandbox Code Playgroud)

此查询不返回结果,但也不会产生错误。

如果我在 Oracle SQL Developer 中执行此查询,它会正常工作并返回数千行:

SELECT * 
FROM ORD_HDR_HST 
WHERE (cast(to_number(to_char(SHIP_DATE ,'J')) as numeric(10,0))  >= cast(to_number(to_char(to_date('01-JAN-2015') ,'J')) as numeric(10,0))  AND 
       cast(to_number(to_char(SHIP_DATE ,'J')) as numeric(10,0))  <= cast(to_number(to_char(to_date('21-SEP-2015') ,'J')) as numeric(10,0)) )
Run Code Online (Sandbox Code Playgroud)

该 …

sql-server oracle date openquery

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

网格菜单项中的绑定命令出现问题

我有一个网格,位于名为 MediatedUserControl 的用户控件派生类内。我添加了一个上下文菜单来让用户删除一个项目,但我一直无法弄清楚如何将命令绑定到我的命令属性。我正在使用 MVVM,并且我的视图模型实现了一个名为 DeleteSelectedItemCommand 的公共 ICommand 属性。

但是,当显示视图时,我在输出窗口中收到以下消息:

System.Windows.Data 错误:4:无法找到引用“RelativeSource FindAncestor、AncestorType='BRO.View.MediatedUserControl”、AncestorLevel='1'' 进行绑定的源。BindingExpression:Path=DataContext.DeleteSelectedItemCommand; 数据项=空;目标元素是“BarButtonItem”(HashCode=6860584);目标属性是“Command”(类型“ICommand”)

我觉得我通常可以很好地处理这样的绑定,但无法弄清楚我在这里缺少什么。感谢您的任何帮助,您可以提供。

<dxg:GridControl HorizontalAlignment="Left" Margin="12,88,0,0" x:Name="gridControl1" VerticalAlignment="Top" Height="500" Width="517" DataSource="{Binding ItemList}" BorderBrush="{StaticResource {x:Static SystemColors.ActiveBorderBrushKey}}" ShowBorder="True" Background="{StaticResource {x:Static SystemColors.ControlLightBrushKey}}" UseLayoutRounding="False" DataContext="{Binding}">
<dxg:GridControl.Columns>
    <dxg:GridColumn FieldName="Code" Header="Code" Width="107" />
    <dxg:GridColumn FieldName="Name" Header="Item" Width="173" />
    <dxg:GridColumn FieldName="PricePerItem" Header="Unit Price" Width="70">
        <dxg:GridColumn.EditSettings>
            <dxe:TextEditSettings DisplayFormat="N2" />
        </dxg:GridColumn.EditSettings>
    </dxg:GridColumn>
    <dxg:GridColumn FieldName="Quantity" Header="Qty" Width="50" AllowEditing="True" />
    <dxg:GridColumn FieldName="TotalPrice" Header="Total Price" Width="90">
        <dxg:GridColumn.EditSettings>
            <dxe:TextEditSettings DisplayFormat="N2" />
        </dxg:GridColumn.EditSettings>
    </dxg:GridColumn>
</dxg:GridControl.Columns>
<dxg:GridControl.View>
    <dxg:TableView ShowIndicator="False" ShowGroupPanel="False" MultiSelectMode="Row" AllowColumnFiltering="False" AllowBestFit="False" …
Run Code Online (Sandbox Code Playgroud)

.net data-binding wpf binding

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

Knockout.js 正在将数字转换为字符串

我正在尝试做一个简单的 Timesheet 演示,但我的计算观察值有一些问题,它坚持将我的数字转换为字符串并连接它们而不是添加它们。JavaScript 不是我的专长。

代码是:

var ViewModel = function() {
    self = this;
    this.RegSun = ko.observable(0);
    this.RegMon = ko.observable(0);
    this.RegTue = ko.observable(0);
    this.RegWed = ko.observable(0);
    this.RegThu = ko.observable(0);
    this.RegFri = ko.observable(0);
    this.RegSat = ko.observable(0);
    this.HolSun = ko.observable(0);
    this.HolMon = ko.observable(0);
    this.HolTue = ko.observable(0);
    this.HolWed = ko.observable(0);
    this.HolThu = ko.observable(0);
    this.HolFri = ko.observable(0);
    this.HolSat = ko.observable(0);

    this.RegSun.extend({ required: true, min: 0, max: 24 });
    this.RegMon.extend({ required: true, min: 0, max: 24 });
    this.RegTue.extend({ required: true, min: 0, max: 24 });
    this.RegWed.extend({ …
Run Code Online (Sandbox Code Playgroud)

javascript knockout.js

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