<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; OOo Basic: определение типа документа]]></title>
		<link>http://forum.script-coding.com/viewtopic.php?id=1387</link>
		<atom:link href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=1387&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «OOo Basic: определение типа документа».]]></description>
		<lastBuildDate>Wed, 23 Apr 2008 18:26:40 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[OOo Basic: определение типа документа]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=10588#p10588</link>
			<description><![CDATA[<p>Функция возвращает &quot;scalc&quot;, &quot;swriter&quot;, &quot;sdraw&quot;, &quot;smath&quot;, &quot;simpress&quot; или &quot;sbase&quot; в зависимости от типа переданного документа. Удобно использовать в макросах OpenOffice.org для соответствующей проверки.<br /></p><div class="codebox"><pre><code>Function GetDocumentType(oDoc)
    Dim sImpress, sCalc, sDraw, sBase, sMath, sWrite
    sCalc    = &quot;com.sun.star.sheet.SpreadsheetDocument&quot;
    sImpress = &quot;com.sun.star.presentation.PresentationDocument&quot;
    sDraw    = &quot;com.sun.star.drawing.DrawingDocument&quot;
    sBase    = &quot;com.sun.star.sdb.DatabaseDocument&quot;
    sMath    = &quot;com.sun.star.formula.FormulaProperties&quot;
    sWrite   = &quot;com.sun.star.text.TextDocument&quot;

    On Local Error GoTo NODOCUMENTTYPE
    If oDoc.SupportsService(sCalc) Then
        GetDocumentType() = &quot;scalc&quot;
    ElseIf  oDoc.SupportsService(sWrite) Then
        GetDocumentType() = &quot;swriter&quot;
    ElseIf  oDoc.SupportsService(sDraw) Then
        GetDocumentType() = &quot;sdraw&quot;
    ElseIf  oDoc.SupportsService(sMath) Then
        GetDocumentType() = &quot;smath&quot;
    ElseIf  oDoc.SupportsService(sImpress) Then
        GetDocumentType() = &quot;simpress&quot;
    ElseIf  oDoc.SupportsService(sBase) Then
        GetDocumentType() = &quot;sbase&quot;
    End If
    NODOCUMENTTYPE:
    If Err &lt;&gt; 0 Then
        GetDocumentType = &quot;&quot;
        Resume GOON
        GOON:
    End If
End Function</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (The gray Cardinal)]]></author>
			<pubDate>Wed, 23 Apr 2008 18:26:40 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=10588#p10588</guid>
		</item>
	</channel>
</rss>
