bennyb hat geschrieben:Da NAV2016 nun C# deutlich besser unterstützt, wäre es irgendwie auch möglich den gesamten C#-Code aus der DLL direkt in eine Codeunit zu stecken?
Kowa hat geschrieben:Direkt nicht, nur über die zugehörigen Objektmetadaten.
Für normale Anwendung ist so etwas tabu, ein Neukompilieren des Codeunits würde die Metadaten auch wieder überschreiben.
Kowa hat geschrieben:Die obige Webseite ist die umfangreichste Quelle zum Thema
namespace Reporting
{
[ControlAddInExport("Reporting")]
public interface IControlAddIn
{
void doSomething(bool bla);
[ApplicationVisible]
event EmptyEventHandler ControlReady;
}
[ClassInterface(ClassInterfaceType.None), Guid("xxx")]
public class MainClass : IControlAddIn
{
public event EmptyEventHandler ControlReady;
public void doSomething(bool bla)
{ /// }
}
fiddi hat geschrieben:Was macht deine Automation eigentlich.
fiddi hat geschrieben:was du willst, ist kein Controlladdin (Es sei denn du möchtest es auf dem Bildschirm anzeigen).
Außerdem kannst du DotNet direkt in NAV nutzen, d.h. du programmierst in C/AL nutzt aber DotNet- Funktionen.
private class Menu
{
public string menu;
public string description;
public int count;
public int countHosp;
public int countAllnotHosp;
public int countAllHosp;
}
private List<Menu> menuListe = new List<Menu>();
public void addMenuCode(string menux, string desc)
{
menuListe.Add(new Menu
{
count = 0,
countHosp = 0,
menu = menux,
description = desc
});
}
public void refreshMenuCounts(string menu, int c, int ch)
{
menuListe.Where(w => w.menu == menu).ToList().ForEach(s => s.count = c);
menuListe.Where(w => w.menu == menu).ToList().ForEach(s => s.countHosp = ch);
//menuListe.Where(w => w.menu == menu).ToList().ForEach(s => s.countAll += ch + c);
menuListe.Where(w => w.menu == menu).ToList().ForEach(s => s.countAllnotHosp += c);
menuListe.Where(w => w.menu == menu).ToList().ForEach(s => s.countAllHosp += ch);
}
Kowa hat geschrieben:Konstruktor
fiddi hat geschrieben:aus NAV oder von wo anders
fiddi hat geschrieben:wenn ich dich jetzt richtig verstehe, kommen die Daten, die dort Zählst aus NAV!?
fiddi hat geschrieben:Hast du dich schon mal mit NAV-Tabellen und vor allem FlowFields auseinander gesetzt?
Ich glaube mit einer Tabelle ist das nicht so einfach zu realisieren, dass ich diese in eine Liste getrennt nach Menü stecken kann.
public int count;
public int countHosp;
public int countAllnotHosp;
public int countAllHosp;
fiddi hat geschrieben:Flowfields in deine wahrscheinlich vorhandene Tabelle mit den Menüs einfügt, und das ganze ist fast erledigt. Dann noch die passenden Flowfilter (Uhrzeit, Datum) eingefügt
Von Bis Menu 1 Menu 1 bewirtet Menu 2 Menu 2 bewirtet Menu3 Menu 3 bewirtet Gesamt
12:00:00 12:14:59 14 0 0 0 0 0 14
12:15:00 12:29:59 18 0 1 0 12 0 31
12:30:00 12:44:59 24 0 1 0 6 0 31
12:45:00 12:59:59 13 4 0 0 7 0 24
13:00:00 13:14:59 9 0 0 0 3 0 12
13:15:00 13:29:59 0 0 0 0 3 0 3
13:30:00 13:44:59 8 0 1 0 5 0 14
13:45:00 13:59:59 1 0 0 0 0 0 1
14:00:00 14:14:59 1 0 0 0 0 0 1
Gesamt 88 4 3 0 36 0 131
davon Chipzahlungen 127
davon Bewirtungen 4
fiddi hat geschrieben:1. gibt es eine Menü-Posten- Tabelle?
fiddi hat geschrieben:2. Sind die Zeiträume die du anzeigst fix, also immer 12.00 - 1215, 12.15 -12.30., und es sind nur diese neun?
fiddi hat geschrieben:3. Könnte man die Achsen vertauschen, also Zeit auf der X-Achse und Menüs auf der Y-Achse?
fiddi hat geschrieben:Eine solche Page kannst du dir einfach kopieren. Du musst dann die Füllfunktionen und die Filter- Felder im Kopf anpassen, und du hast eine Online- Übersicht.
fiddi hat geschrieben:Das ganze kannst du auch mit einem Bericht machen, den du oder der Empfänger planen kann planen kann. Im RDLC ist das sogar noch etwas einfacher, da dort sowohl Zeilen (Zeiträume) als auch Spaltengruppen (Menüs) möglich sind
fiddi hat geschrieben:wenn du das als Background, d.h. auf dem Servicetier laufen lassen willst bzw. musst, dann muss alles in DotNet sein, keine Automations. D.h. da hast du sicherlich auch was zu tun.
bennyb hat geschrieben:Also z.B. Auto-Klasse mit Speed, Gewicht.. Davon mehrere Objekte generieren in eine Liste und dann mit foreach z.B. durch jedes Objekt durch und Speed/Gewicht anpassen - da fehlt mir so die Idee, wie ich das mit den DotNet-Typen in C/AL umsetzen kann.
Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast