AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi aus Monat+Jahr DATE machen
Thema durchsuchen
Ansicht
Themen-Optionen

aus Monat+Jahr DATE machen

Ein Thema von hoika · begonnen am 16. Apr 2008 · letzter Beitrag vom 16. Apr 2008
Antwort Antwort
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#1

aus Monat+Jahr DATE machen

  Alt 16. Apr 2008, 17:21
Datenbank: Firebird • Version: 1.5 • Zugriff über: egal
Hallo,

in einer SP habe ich als Parameter Monat und Jahr (Integer).
Jetzt brauche ich den 1.1. des Monats als DATE.

isher mache ich das so.


FirstDayOfMonth DATE

Select Cast( 1 || '.' || :TheMonth || '.' || :TheYear as Date)
From rdb$DataBase
Into :FirstDayOfMonth ;


Geht das ohne UDF auch anders ?


Heiko
Heiko
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#2

Re: aus Monat+Jahr DATE machen

  Alt 16. Apr 2008, 18:11
Hoika, Du musst auch selber suchen !

http://www.firebirdsql.org/index.php...id=ostenried_1

Wenn das nicht reicht. Da ist sogar der "Karfreitag" dabei. Das drucke ich mir sogar glatt mal aus für Archiv.

Edit : Sofern die Funktion/SP fertig ist bitte ich höflichst darum sie hier zu posten.
Gruß
Hansa
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: aus Monat+Jahr DATE machen

  Alt 16. Apr 2008, 18:15
Das ist aber nicht unbedingt einfacher als Heikos Lösung
Markus Kinzler
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: aus Monat+Jahr DATE machen

  Alt 16. Apr 2008, 18:18
Hallo Hansa,

hab ja gesucht !! tztz

aus deinem Link

SQL-Code:
CREATE PROCEDURE PROC_ENCODEDATE( AYEAR INTEGER
                                 , AMONTH INTEGER
                                 , ADAY INTEGER )
                         RETURNS ( RESULT DATE )
AS
BEGIN
   Result = cast( ADay || '.' || AMonth || '.' || AYear as DATE);
   suspend;
END

Also habe ich es ja richtig gemacht.

Was soll ich da Posten ?

Die SP macht ja was ganz anderes,
nur wollte der Kunde halt Monat und Jahr als Integer übergeben
(externer Zugriff)

Vielleicht sollte man wirklich mal ein paar nützliche Datumsfunktionen
hier posten (IncMonth z.B.).


edit:
http://www.firebirdsql.org/index.php...l&id=calford_1

Das hatte ich mal gelesen und danach ich lange gesucht.



Heiko
Heiko
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#5

Re: aus Monat+Jahr DATE machen

  Alt 16. Apr 2008, 18:25
Was soll extern sein ?
Gruß
Hansa
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#6

Re: aus Monat+Jahr DATE machen

  Alt 16. Apr 2008, 18:28
Zitat von hoika:
Geht das ohne UDF auch anders ?
Es geht auch ganz ohne UDF und StoredProcs, wenn man sich eine Kalendertabelle aufbaut
Code:
Datum     | Day | Month | Year | DayOfWeek | WeekNo |
======================================================
01.01.2008 |   1 |     1 | 2008 |         3 |      1
Für jeden Tag gibt es einen Datensatz sagen wir für die nächsten 20 Jahre.
Vorteile:
* portabel auf jede Datenbank
* Informationen leicht per JOIN oder Unterabfrage ermittelt werden
* erlaubt auch komplexe Fragestellungen (z.B. welcher Tag im Jahr 2008 der Karfreitag ist oder welche Tage haben Sommerzeit)
Nachteile:
* Tabelle ist im Zeitbereich begrenzt
* Tabelle muss vom Programm initial befüllt werden
Andreas
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: aus Monat+Jahr DATE machen

  Alt 16. Apr 2008, 18:50
Hallo,

machen wir 100 Jahre draus,
dann muss ich danach keinen Support mehr machen


Heiko
Heiko
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:08 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz