handdator

Visa fullständig version : HTML-export till Webb och CD, jag kan inte göra länkar- vad ska jag göra



Olle_Olsson
2016-06-27, 12:28
Vid HTML-export i Disgen 8.2d (till Webben, CD, USB) kunde man sen göra en separat ”länk” så att man från länken kom direkt till den personen i ”HTML-en” i datorn och på webben.
Hur man gör i Disgen 8 har beskrivits i Diskulogen nr 91, 93 och 97.
Men, när jag försöker göra detta i Disgen 2016.1, så fungerar det inte. Kanske beroende av nya databasen?
Hur ska jag göra för att ”länka”
Olle Olsson

Tillägg; detta var med mall nr 7 (adressfönstret ändras inte om jag väljer en annan person)
Med mall 10; där ändras adressfönstret om jag väljer annan person,
jag ska testa om jag kan länka

Christer
2016-06-28, 09:08
Vad jag kan se med mina enkla tester så går det bra att skriva html-kod som exemplet i Diskulogen nr 97 i sidfoten samt html-kod i notistypen Extra text som i Diskulogen nr 93 (utan knapp för jag hittade inte Billings artikel). Du får nog utveckla din fråga lite mer. Vad har jag inte förstått?

Olle_Olsson
2016-08-18, 19:42
Att göra en separat "försättssida" med namn och länk in till HTML-exporten funkar bra med mall nr 10 (efter lite olika försök) sen lade jag in HTML-en på USB-minne och sände till mina syskonbarn. Men det funkar inte med mall nr 7

Edgar
2016-08-19, 00:10
Orsaken är sannolikt följande, om jag har förstått saken rätt. Mall 7 använder sig av ramar för att placera registersidorna och ansedeln på skärmen. HTML-sidorna för ansedlarna i mall 7 har därför en inledande kod (se nedan), som kollar om ramstrukturen är på plats och om inte, så visas inte sidan. Därför fungerar inte länkarna till ansedelssidorna om länkningen sker från en sida utan den ramstrukturen. De andra mallarna har inte den kontrollen och fungerar därför även för externa länkar.

Jag förstår inte varför denna ramkontroll görs i mall 7. Jag har plockat bort den från min egen mall 7 och då fungerar det alldeles utmärkt såväl för standardramarna i mall 7 som för externa länkar till ansedelssidorna. Kanske har jag förbisett någon tillämpning där denna ramkontroll verkligen behövs.

<SCRIPT type="text/javascript" LANGUAGE="JavaScript">
function checkforframe() {
var newURL = self.location.pathname;
var pos = newURL.indexOf(":");
if (pos != -1) {
var len = newURL.length;
var newURL = newURL.substring(1,len);
}
if (window.top == window.self){
window.top.location.href = '../../index.htm?' + escape(newURL);
return;
}
top.document.title = self.document.title;
}
// End -->
</SCRIPT>
</HEAD>
<BODY onload="checkforframe()">

m11916
2016-08-20, 20:52
Tanken är att om man hittar sidan via en sökmotor, eller annan länk direkt till en ansedel, så ska denna öppnas i sin ramstruktur så att man får upp en komplett sida med personregister och länkar till orts och efternamnsregistren som ju inte finns på ansedeln utan på menydelen till vänster i ramfönstret.
Tar man bort kontrollen så öppnas ju bara ansedeln oh det blir svårare att ta sig vidare på siten.
Det ska alltså bli se likadant ut oavsett vilken väg man tar till sidan.
Detta ska fungera oavsett om du flyttar hela paketet med filer till CD, USB eller extern webb

Edgar
2016-08-21, 09:25
OK, jag förstår. I min tillämpning vill jag komma åt ansedeln och lägga in den i min egen ramstruktur och då går det bra att helt enkelt ta bort anropet till scriptet. När jag vill komma åt Disgens ramstruktur med registren anropar jag index.htm direkt och öppnar Disgens ramstruktur i ett eget fönster.

Tyvärr är mina kunskaper i script/java-programmering mycket rudimentära så jag kan inte analysera scriptet till fullo. Men jag tror att scriptet vill åstadkomma exakt det du beskriver för scriptet anropar index.htm som då skapar ramstruturen och lägger in personregister och registerlistan i sina ramar. Men något går fel då ansedeln skall läggas in i sin ram och felmeddelandet "Adressen förstods inte" kommer.

MEN, MEN, MEN!!! Detta hade jag glömt! Vad har du för web-läsare? Jag har Firefox och får detta fel. Men jag har testat Internet Explorer och Google Chrome och de ger just det resultat som jag tror att scriptet avser och som du beskriver. (I IE måste du "tillåta att aktivt innehåll körs i filer på den här datorn".) Det är alltså Firefox som inte öppnar ansedeln, Internet Explorer och Google Chrome reagerar korrekt och öppnar ansedeln i sin ram. (För min del spelar detta ingen roll, jag vill i vissa lägen öppna ansedeln utan Disgens ramstruktur.)

Jag hoppas att detta hjälpte. Annars får någon med bättre programmeringsvana ta vid.