AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein TMS Webcore app mit DB auf gehosteten Systemen

TMS Webcore app mit DB auf gehosteten Systemen

Ein Thema von noisy_master · begonnen am 23. Nov 2022 · letzter Beitrag vom 25. Mai 2024
Antwort Antwort
Benutzerbild von TigerLilly
TigerLilly

Registriert seit: 24. Mai 2017
Ort: Wien, Österreich
1.241 Beiträge
 
Delphi 12 Athens
 
#1

AW: TMS Webcore app mit DB auf gehosteten Systemen

  Alt 29. Nov 2022, 10:33
Wenn du gaanz viel Muße hast hast du ja vielleicht sogar ein funktionierendes Snippet für mich
Mach ich gerne - dauert nur ein bissl. Sorry.
Funktioniert extrem cool und nahezu ohne Code. Was mytbo zu Fuß macht, machen die TMS Komponenten von selbst.
  Mit Zitat antworten Zitat
noisy_master

Registriert seit: 17. Jun 2009
Ort: Wolfenbüttel/Baddeckenstedt
263 Beiträge
 
Delphi XE5 Professional
 
#2

AW: TMS Webcore app mit DB auf gehosteten Systemen

  Alt 29. Nov 2022, 10:55
Mach ich gerne - dauert nur ein bissl. Sorry.
Funktioniert extrem cool und nahezu ohne Code. Was mytbo zu Fuß macht, machen die TMS Komponenten von selbst.
Kein Problem, freue mich ja über jede Hilfe Vielen Dank schon mal vorab....bin schon ganz gespannt
Dirk
  Mit Zitat antworten Zitat
Benutzerbild von TigerLilly
TigerLilly

Registriert seit: 24. Mai 2017
Ort: Wien, Österreich
1.241 Beiträge
 
Delphi 12 Athens
 
#3

AW: TMS Webcore app mit DB auf gehosteten Systemen

  Alt 29. Nov 2022, 14:02
Ich habe aus der DFM das wichtigste rauskopiert:
Code:
object conNaehrwerte: TWebClientConnection
    Active = False
    Headers.Strings = (
      'X-API-Key=12345678')
    DataNode = 'records'
    URI =
      'https://www.nutritional-software.at/api.php/records/TBLXY?filter=COL1,eq,ABC'
    Left = 1134
    Top = 568
  end
  object cdsNaehrwerte: TWebClientDataSet
    Connection = conNaehrwerte
    Params = <>
    Left = 1265
    Top = 561
  end
Also
1) TWebClientConnection aufs Formular und bestücken
2) TWebClientDataSet damit verbinden
3) active = true

Weiter kannst du mit TWebDataSource und dann auch schon visuelle Kompopnenten zB TWebDBEdit anbinden. Ich habe zuerst nur die TWeb*-Sachen verwendet, aber hier kann man auch alles aus TTMSFNC* benutzen.

Ich habe zu Beginn mit CORS gekämpft, aber wenn das API und der DB Server auf demseblen Server sind, ist das kein Thema. Der REST-Debugger war sehr hilfreich beim Verstehen, was im Header etc stehen muss bzw dann zurückgeliefert wird.

Achja: Oben das
Code:
 Headers.Strings = (
      'X-API-Key=12345678')
steht da nur, weil ich als Middleware die Authentifizierung aktiv habe. Wenn du die nicht hast, brauchst du den header gar nicht setzen.

Hilft dir das mal?
  Mit Zitat antworten Zitat
noisy_master

Registriert seit: 17. Jun 2009
Ort: Wolfenbüttel/Baddeckenstedt
263 Beiträge
 
Delphi XE5 Professional
 
#4

AW: TMS Webcore app mit DB auf gehosteten Systemen

  Alt 29. Nov 2022, 17:05
Hi TigerLilly,

super, tolle hilfe, funktioniert bei mir aber leider nicht:
alles noch lokal
im Browser: http://localhost/api.php/records/customers
ergibt
{"records":[{"id":1,"company":"Company A","last_name":"Bedecs","first_name":"Anna","email _address":null,"job_title":"Owner","business_phone ":"(123)555-0100","home_phone":null,"mobile_phone":null,"fax_n umber":"(123)555-0101","address":"123 1st Street","city":"Seattle","state_province":"WA","zi p_postal_code":"99999","country_region":"USA","web _page":null,"notes":null,"attachments":""},{"id":2 ,"company":"Company B","last_name":"Gratacos Solsona","first_name":"Antonio","email_address":nu ll,"job_title":"Owner","business_phone":"(123)555-0100","home_phone":null,"mobile_phone":null,"fax_n umber":"(123)555-0101","address":"123 2nd Street","city":"Boston","state_province":"MA","zip _postal_code":"99999","country_region":"USA","web_ page":null,"notes":null,"attachments":""},{"id":3, "company":"Company C".....
Das Ganze mit
Rest Explorer 1.2 auf http://localhost/api.php/records/customers versucht...liefert auch Ergebnisse

dann in Delphi:
Delphi-Quellcode:
object Form1: TForm1
  Width = 1096
  Height = 681
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -11
  Font.Name = 'Tahoma'
  Font.Style = []
  FormContainer = 'appcontent'
  ParentFont = False
  OnCreate = WebFormCreate
  object WebLabel1: TWebLabel
    Left = 24
    Top = 40
    Width = 180
    Height = 16
    Caption = 'Click on column headers to sort'
    ElementID = 'description'
    Font.Charset = DEFAULT_CHARSET
    Font.Color = clWindowText
    Font.Height = -13
    Font.Name = 'Tahoma'
    Font.Style = []
    HeightPercent = 100.000000000000000000
    ParentFont = False
    WidthPercent = 100.000000000000000000
  end
  object WebLabel2: TWebLabel
    Left = 24
    Top = 8
    Width = 62
    Height = 13
    Caption = 'DBGrid Demo'
    ElementID = 'title'
    HeightPercent = 100.000000000000000000
    WidthPercent = 100.000000000000000000
  end
  object WebDBGrid1: TWebDBGrid
    Left = 24
    Top = 59
    Width = 1049
    Height = 470
    Columns = <
      item
        DataField = 'Company'
        Title = 'Company'
      end>
    DefaultRowHeight = 80
    DataSource = WebDataSource1
    FixedCols = 0
    Font.Charset = DEFAULT_CHARSET
    Font.Color = clWindowText
    Font.Height = -13
    Font.Name = 'Tahoma'
    Font.Style = []
    Options = [goFixedVertLine, goFixedHorzLine, goVertLine, goHorzLine, goRangeSelect, goRowSelect]
    ParentFont = False
    TabOrder = 0
    HeightPercent = 100.000000000000000000
    WidthPercent = 100.000000000000000000
    OnFixedCellClick = WebDBGrid1FixedCellClick
    ColWidths = (
      64)
    RowHeights = (
      80
      80
      80
      80
      80)
  end
  object WebClientConnection1: TWebClientConnection
    Active = True
    URI = 'localhost/api.php/records/customers/'
    Left = 464
    Top = 544
  end
  object WebDataSource1: TWebDataSource
    DataSet = WebClientDataSet1
    Left = 624
    Top = 552
  end
  object WebClientDataSet1: TWebClientDataSet
    Connection = WebClientConnection1
    Params = <>
    Left = 256
    Top = 552
    object WebClientDataSet1Brand: TStringField
      FieldName = 'Company'
      Size = 256
    end
  end
end
liefert mir
ERROR
Error connecting to URI localhost/api.php/records/customers/ | fMessage::Error connecting to URI localhost/api.php/records/customers/ FJSError::Error: Error connecting to URI localhost/api.php/records/customers/ fHelpContext::0
at http://localhost:8000/TMSWeb_DBGrid/TMSWeb_DBGrid.js [259:48]
auf
http://localhost:8000/TMSWeb_DBGrid/index.html

und die gleiche Fehlermeldung bekomme ich auch schon, wenn ich ich mir im Designer auf WebClientDataset die Felder holen will...

Bin ich zu doof, oder was ist hier los?
Dirk
  Mit Zitat antworten Zitat
noisy_master

Registriert seit: 17. Jun 2009
Ort: Wolfenbüttel/Baddeckenstedt
263 Beiträge
 
Delphi XE5 Professional
 
#5

AW: TMS Webcore app mit DB auf gehosteten Systemen

  Alt 29. Nov 2022, 17:11
Bin ich zu doof, oder was ist hier los?
Okay, ein bisschen schon: wenn ich zur URI ein http:// hinzufüge bekomme ich zumindest keinen Connection Error mehr, aber dafür in der App immer noch ein leeres Dataset. Und wenn ich im Designer versuche die Felder für das WebDataset holen zu lassen bekomme ich die Fehlermeldung, dass das automatische erzeugen der Felder fehlgeschlagen wäre
Dirk
  Mit Zitat antworten Zitat
Antwort Antwort

 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 10:49 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz